Commit graph

118 commits

Author SHA1 Message Date
Folkert
07e29eb34c initial implementation 2020-10-14 14:43:59 +02:00
Folkert
f07fe1879b fix problem with specializing rigids 2020-10-14 02:21:33 +02:00
Folkert
2da2c25d32 research bug with linked list and uniqueness 2020-10-14 00:49:14 +02:00
Folkert
f6106166f1 fix bug with nested lets 2020-10-14 00:32:58 +02:00
Folkert
89a1146c19 run gen tests as modules 2020-10-13 21:45:41 +02:00
Folkert
2bceaf0503 implement LayoutCache on top of ena 2020-10-13 16:10:38 +02:00
Folkert
edc0717a7d specialize rigids 2020-10-12 23:58:39 +02:00
Folkert
9ad72d4979 fix unreported clippy warnings 2020-10-12 16:22:19 +02:00
Folkert
06bc187f8b all tests passing + clippy satisfied 2020-10-12 01:42:03 +02:00
Folkert
40f0588696 back to a working state 2020-10-11 21:55:26 +02:00
Folkert
5b14dc73f6 allow multiple external specializations per symbol 2020-10-11 15:25:15 +02:00
Folkert
4f9b27b694 sketch of a proof of concept 2020-10-11 01:54:50 +02:00
Folkert
79d3b0ac01 cross module specialization WIP 2020-10-11 01:23:52 +02:00
Folkert
d346482b76 fix new clippy warnings 2020-10-10 19:59:58 +02:00
Folkert
c7b251d6b4 Merge remote-tracking branch 'origin/trunk' into gen-modules 2020-10-08 01:29:32 +02:00
Folkert
768dbbc553 all tests passing 2020-10-08 00:53:06 +02:00
Folkert
6976682783 solving some compile errors 2020-10-07 21:28:42 +02:00
Folkert
faa5b2c830 fix clippy's qualms 2020-10-04 00:20:13 +02:00
Folkert
c4b4cb013e implement record update 2020-10-04 00:06:14 +02:00
Folkert
16ec417324 record update foundations 2020-10-03 21:44:25 +02:00
Folkert
c8e5acf142 code gen Accessor 2020-10-03 21:44:04 +02:00
Folkert
2e1e87ad6a add closure size variable 2020-10-02 00:53:02 +02:00
Folkert
0344030015 allow calling of functions passed as arguments 2020-09-08 14:19:47 +02:00
Folkert
f857203673 Merge remote-tracking branch 'origin/trunk' into recursive-layouts 2020-09-07 16:53:15 +02:00
Folkert
85f290f9be cleanup, and remove reset-reuse stuff for now 2020-09-07 16:50:05 +02:00
Folkert
127dd06586 fix bug with optional record fields 2020-09-07 14:13:22 +02:00
Folkert
25cd0a2c02 codegen for walkRight 2020-09-06 22:03:46 +02:00
Folkert
46755973d6 wip 2020-09-06 18:53:26 +02:00
Folkert
ceb938c9af get tests working again 2020-09-06 00:26:41 +02:00
Folkert
b849a3019f reset reuse stuff 2020-09-04 23:07:45 +02:00
Richard Feldman
37a254cef3 Interpolate strings by desugaring to Str.concat
We could definitely make this more efficent by
allocating enough space for the final string
and then copying the contents of each of the pieces
into it one by one. We don't do that yet though!
2020-08-31 23:14:45 -04:00
Richard Feldman
e9f71d09bb Monomorphize string interpolation 2020-08-31 23:13:50 -04:00
Richard Feldman
f35e43768a Get things compiling 2020-08-31 23:13:50 -04:00
Folkert
020b6154f9 fix passing functions by name 2020-08-26 23:34:49 +02:00
Chad Stearns
27ef81df58 Commented back in ir.rs lines 2020-08-24 03:36:20 -04:00
Chad Stearns
6232b31818 Comment out inc_dec in ir.rs 2020-08-22 19:48:08 -04: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
Folkert
294273283b make shared quicksort work 2020-08-15 00:14:20 +02:00
Folkert
d8c71c23f4 thread in borrow signature inference 2020-08-13 20:56:33 +02:00
Richard Feldman
295cb00499 wip 2020-08-12 23:18:40 -04:00
Richard Feldman
3f0b08a992 Have Stmt::new accept LayoutCache 2020-08-12 23:14:06 -04:00
Richard Feldman
8751e4bd00 Make pattern_vars be a slice 2020-08-12 23:08:43 -04:00
Richard Feldman
fe0da7a8d7 Appease clippy 2020-08-12 22:33:10 -04:00
Folkert
5ca843822f implement optional fields in let bindings and when 2020-08-13 01:39:59 +02:00
Folkert
3e12f1a309 Merge remote-tracking branch 'origin/tail-call-elimination' into gen-optional-field 2020-08-13 00:21:21 +02:00
Folkert
20ddbeb528 implement optional fields in function pattern matches 2020-08-13 00:09:57 +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
Folkert
7603225fca generate return earlier, causing more TCE 2020-08-11 22:30:34 +02:00