Commit graph

485 commits

Author SHA1 Message Date
Folkert
f9cf4ea371 recursive tag unions 2020-08-31 14:29:09 +02:00
Chad Stearns
b02f8af37e Complete implementation of List.keepIf, that is currently not passing tests 2020-08-30 21:29:14 -04:00
Chad Stearns
8b31419b2c Merge in remote 2020-08-30 15:38:43 -04:00
Chad Stearns
08dba946e6 Use struct parameter 2020-08-29 23:03:56 -04:00
Chad Stearns
379235fd7e Improved comment 2020-08-29 22:44:56 -04:00
Chad Stearns
257cb88511 Added name parameter to non_emptylist_function 2020-08-29 22:31:14 -04:00
Chad Stearns
f2a8065adc Moved over to incrementing_elem_loop from incrementing_index_loop 2020-08-29 21:56:52 -04:00
Chad Stearns
dedbd5b3bd partial work on using if_non_empty in list_map 2020-08-29 20:01:17 -04:00
Chad Stearns
a83891011d if_non_empty helper function 2020-08-29 19:56:55 -04:00
Chad Stearns
a0a00d3521 Store list helper function 2020-08-29 19:56:42 -04:00
Chad Stearns
30046d1ad4 basic List.keepIf set definition, but no implementation 2020-08-29 15:47:11 -04:00
Folkert
73bb8e58c5 List.map: set calling convention explicitly 2020-08-27 00:34:57 +02:00
Folkert
020b6154f9 fix passing functions by name 2020-08-26 23:34:49 +02:00
Chad Stearns
4ea52c139d List.map implementation 2020-08-23 19:35:21 -04:00
Chad Stearns
43bb4af2f4 Import listmap into build.rs 2020-08-22 19:47:59 -04:00
Chad Stearns
800b99d165 Try different List.map unique implementation 2020-08-22 19:46:29 -04:00
Folkert
ba186bfe09 can store, but not load recursive fields 2020-08-22 16:01:04 +02:00
Folkert
f4e1aa046d basic infrastruture for recursive layouts 2020-08-21 00:14:24 +02:00
Richard Feldman
f48aca841c
Update compiler/gen/src/llvm/build.rs 2020-08-19 23:38:48 -04:00
Richard Feldman
50251c678b
Merge branch 'trunk' into str-concat 2020-08-19 23:05:13 -04:00
Chad Stearns
8b582d4835 Fix some names and some comments 2020-08-19 20:04:00 -04:00
Folkert
0e5283efd2 Merge remote-tracking branch 'origin/trunk' into infer-borrow 2020-08-19 23:56:29 +02:00
Folkert
bfa11cf6b0 appease the clipman 2020-08-19 23:46:56 +02:00
Folkert
fa5e5ab201 back to a working version 2020-08-19 23:42:45 +02:00
Chad Stearns
72558c61f1 Implemented Str.concat 2020-08-19 02:00:49 -04:00
Chad Stearns
2f2763351d Change parameters to List.concat. Now it is less dependent on &args 2020-08-19 02:00:40 -04:00
Chad Stearns
e71e33c34e Merge branch 'trunk' of github.com:rtfeldman/roc into str-concat 2020-08-18 19:54:41 -04:00
Chadtech
485626ce61
Merge branch 'trunk' into remove-nul-terminator-str-literal-implementation 2020-08-17 03:26:49 -04:00
Chad Stearns
4d4379ae2d Put str literal implementation under if statement checking if its empty 2020-08-17 03:26:18 -04:00
Richard Feldman
504d7b65e2 Str and List have the same layout now 2020-08-16 16:37:25 -04:00
Richard Feldman
608c4eebd9 Drop unnecessary arg_basic_types 2020-08-16 16:17:10 -04:00
Chad Stearns
4ded732a09 Implement String literals as lists of bytes instead of null terminating c-strings 2020-08-16 04:38:24 -04:00
Chad Stearns
a81504720b Str.concat tests and definition set up 2020-08-15 02:45:52 -04:00
Folkert
294273283b make shared quicksort work 2020-08-15 00:14:20 +02:00
Chad Stearns
0a725eff3c Base definition of List.map, but not real implementation, and the tests fail 2020-08-14 02:10:20 -04:00
Folkert
5ca843822f implement optional fields in let bindings and when 2020-08-13 01:39:59 +02:00
Folkert
380e34d296 Merge remote-tracking branch 'origin/trunk' into tail-call-elimination 2020-08-12 15:46:50 +02:00
Folkert
8c86836101 add TCE 2020-08-12 14:03:55 +02:00
Folkert
bdd8751107 start work on tail recursion 2020-08-12 12:57:20 +02:00
Chad Stearns
6e4c24735b Use allocate_list in List.concat for combined_list_ptr 2020-08-11 19:04:59 -04:00
Chad Stearns
29c0bfa65d Use allocate_list in clone_nonempty_list 2020-08-11 19:01:18 -04:00
Chad Stearns
77b4c5d8b6 Merge in remote trunk and resolve conflicts 2020-08-11 18:18:05 -04:00
Folkert
7603225fca generate return earlier, causing more TCE 2020-08-11 22:30:34 +02:00
Richard Feldman
12ed20b5cd Use fast calling convention internally 2020-08-11 09:02:26 -04:00
Folkert
84a8b69437 generate IR that uses uniqueness 2020-08-11 14:47:14 +02:00
Richard Feldman
8803cb9523 Remove an unnecessary newline diff 2020-08-10 23:22:47 -04:00
Richard Feldman
35e132e6d7 Fix quicksort benchmark 2020-08-10 21:25:47 -04:00
Folkert
79ea62b9d4 make uniqueness change codegen 2020-08-10 21:13:57 +02:00
Folkert
8f7d842d41 apply optimization passes 2020-08-10 13:34:28 +02:00
Chad Stearns
76a31fb945 Comply with clippyg 2020-08-10 02:10:04 -04:00