22 Commits

Author SHA1 Message Date
Ulf Norell
5c77237316 compile records (patterns and construction) 2019-05-07 13:16:38 +02:00
Ulf Norell
d333b5f11f Compile list patterns 2019-05-07 13:16:38 +02:00
Ulf Norell
6042294f96 Compile pattern matching on integer literals 2019-05-07 13:16:38 +02:00
Ulf Norell
25f80da827 Remove unused argument 2019-05-07 13:16:38 +02:00
Ulf Norell
96bff0c32f Fix dialyzer things 2019-05-07 13:16:38 +02:00
Ulf Norell
ff58ec0cba Remove 'if' from fcode 2019-05-07 13:16:38 +02:00
Ulf Norell
ee7bc126fc Another renaming bug 2019-05-07 13:16:38 +02:00
Ulf Norell
cca83a5dfa Fix renaming bug 2019-05-07 13:16:38 +02:00
Ulf Norell
f73a0934d4 Pretty printer for fcode 2019-05-07 13:16:38 +02:00
Ulf Norell
771e4aa967 Fix various bugs in pattern match compilation 2019-05-07 13:16:38 +02:00
Ulf Norell
e597a3780a compile list literals 2019-05-07 13:16:38 +02:00
Ulf Norell
3a095cde7e Add missing case in renaming 2019-05-07 13:16:38 +02:00
Ulf Norell
e2c48e1069 wip: rewrite case tree compiler to handle catch-alls
still with debug printing, and can't compile it yet
2019-05-07 13:16:38 +02:00
Ulf Norell
ab13222d29 Pattern matching on booleans 2019-05-07 13:16:38 +02:00
Ulf Norell
41387ce0b1 Compile nested pattern matching to case trees
(Only tuple and variable patterns so far)
2019-05-07 13:16:38 +02:00
Ulf Norell
788840f0fa Compile tuple construction 2019-05-07 13:16:38 +02:00
Ulf Norell
47a48812b8 Fix minor bug 2019-05-07 13:16:38 +02:00
Ulf Norell
200f80cc89 Compile shallow matching on tuples 2019-05-07 13:16:38 +02:00
Ulf Norell
d37ef8cec2 Basic tuple patterns 2019-05-07 13:16:38 +02:00
Ulf Norell
216fbc6144 Fix and improve broken bytecode optimisations 2019-05-07 13:16:38 +02:00
Ulf Norell
33bb8a37d0 Compile let to FATE 2019-05-07 13:16:38 +02:00
Ulf Norell
bc8b2d1c81 Start on new intermediate code for FATE 2019-05-07 13:16:38 +02:00