Chad Stearns
6a0655f96d
Merging in remote
2020-03-14 12:35:00 -04:00
Chad Stearns
51ad7ea0f1
unused def report and batch report text
2020-03-14 12:28:36 -04:00
Richard Feldman
e01db9b284
wip empty list
2020-03-13 23:33:32 -04:00
Richard Feldman
e9a0c8b3ef
Fix mono for empty list
2020-03-13 22:41:55 -04:00
Richard Feldman
de25dc0484
Re-enable empty list test
2020-03-13 22:41:46 -04:00
Richard Feldman
458b28de17
Drop dbg! statement
2020-03-13 22:41:35 -04:00
Richard Feldman
8d4331f903
Merge remote-tracking branch 'origin/trunk' into array-wrappers
2020-03-13 22:20:35 -04:00
Richard Feldman
4c19dd86ff
First pass at some List implementation stuff
2020-03-13 22:15:26 -04:00
Richard Feldman
80722b872a
Update List.set to use wrapper
2020-03-13 22:15:02 -04:00
Richard Feldman
6f64bb2f9b
Update List.getUnsafe to use wrapper
2020-03-13 22:15:02 -04:00
Richard Feldman
8c43c66aa3
Remove Sort from roc-for-elm-programmers.md
2020-03-13 22:15:02 -04:00
Folkert
e2a079f0cc
empty ext vars in type_to_var
2020-03-14 01:43:14 +01:00
Folkert
b43be95b19
add record_var to Access and Accessor
2020-03-14 01:13:44 +01:00
Folkert
e62ddc9ef5
make record variable names clearer
2020-03-14 01:01:14 +01:00
Folkert
1a8f380033
Merge remote-tracking branch 'origin/trunk' into mono-if
2020-03-14 01:00:25 +01:00
Folkert
1570e9b96e
make mono patterns nicer
2020-03-14 00:10:11 +01:00
Folkert
c4c40ec878
fix cond generation
...
With Enum patterns (u8 in size), the size of the condition and the branches could disagree. (the branches would be i64).
we now cast the branches to the smaller integer type based on the layout
2020-03-14 00:07:32 +01:00
Folkert
38c93c001f
constrain whole_var
2020-03-13 23:34:29 +01:00
Folkert
2e697ee8f9
add whole_var to tag union/record
...
the existing var is for the extension (ext_var). during mono we need the whole type to look up the layout, so store that as well
2020-03-13 23:28:36 +01:00
Richard Feldman
41568e4fd5
Merge pull request #247 from rtfeldman/access-record-fields
...
Progress on accessing record fields (implemented integer fields in cranelift and llvm)
2020-03-13 18:21:51 -04:00
Folkert
129be86233
clean up when to Cond conversion
2020-03-13 21:24:42 +01:00
Folkert
df54bb5aef
fix incorrect signature for isEq in uniq builtins
2020-03-13 20:49:16 +01:00
Folkert
05a3e8c3d8
equality for Byte and Bool
2020-03-13 17:01:18 +01:00
Folkert
f894459159
fix comment
2020-03-13 16:38:33 +01:00
Folkert
242679b841
fix clippy complaints
2020-03-13 16:14:37 +01:00
Folkert
bfde5c596d
remove dead code
2020-03-13 15:17:37 +01:00
Folkert
97f1548a24
add tests
2020-03-13 15:16:27 +01:00
Folkert
735358c577
implement isEq for Float/Int
2020-03-13 15:15:10 +01:00
Folkert
6651180283
implement Bool in llvm
2020-03-13 15:13:43 +01:00
Dan Bruder
c16d5cb3f1
struct creation and access in llvm
2020-03-13 10:13:32 -04:00
Folkert
a3b1ec3be0
pull tags/fields from the ext_var during unification
2020-03-13 15:12:32 +01:00
Dan Bruder
eea25429b6
uncomment llvm tests for basic_record
2020-03-13 09:16:04 -04:00
Dan Bruder
099145e4b4
Merge branch 'trunk' into access-record-fields
2020-03-13 09:07:41 -04:00
Folkert
9ef4a6d891
fix bug in uniq isEq type
...
it always wanted Boolean arguments ...
2020-03-13 13:06:56 +01:00
Folkert
e01a6bab9b
improve error reporting by mismatch! macro
2020-03-13 13:06:56 +01:00
Folkert
a7af366c3a
new code gen for Cond
2020-03-13 13:06:56 +01:00
Folkert
263e4b4b6c
add tests for mono If
2020-03-13 13:06:56 +01:00
Folkert
e3e84ecb0c
fix If bug in uniq constraint gen
2020-03-13 13:06:56 +01:00
Folkert
aeeaf99c17
fix bug in constraint gen for If
...
the condition expression wasn't actually constrained
2020-03-13 13:06:56 +01:00
Richard Feldman
7f358cd14c
Merge pull request #245 from rtfeldman/monomorphize-plus
...
Monomorphize
2020-03-13 01:21:44 -04:00
Folkert
f02193b962
fix new clippy warnings
2020-03-12 22:56:58 +01:00
Folkert
4da01c720e
monomorphize the ext_var of records/tag unions
2020-03-12 21:32:58 +01:00
Folkert
f372e4d108
move fresh symbol generation into Env
2020-03-12 16:55:45 +01:00
Dan Bruder
bfd9150af4
access record fields progress
2020-03-12 10:37:07 -04:00
Folkert
de40cf62f3
special-case anonymous functions
2020-03-12 14:03:26 +01:00
Folkert
cfb3952fbf
put patterns into PartialProc
...
So Load(symbol) finds a defined value
2020-03-12 13:20:26 +01:00
Folkert
9761aabe65
add is_empty to Procs
2020-03-12 12:58:03 +01:00
Richard Feldman
f74471012c
Improve an error message
2020-03-12 00:53:24 -04:00
Richard Feldman
723ef8e6d0
Add a missing register_debug_idents call
2020-03-12 00:43:04 -04:00
Richard Feldman
494a8574bf
Drop obsolete add_closure function
2020-03-12 00:40:07 -04:00