Commit Graph

90 Commits

Author SHA1 Message Date
ayazhafiz
91050d9989
Add solve test for same layout different niche 2022-07-03 10:37:40 -04:00
ayazhafiz
ae410fbf5d
Fix mono tests 2022-07-03 10:37:39 -04:00
Ayaz
6c9b10af4e
Update wasm layout sizes 2022-07-03 10:37:36 -04:00
Ayaz Hafiz
a3ffc12569
Revert unneeded changes 2022-07-03 10:37:36 -04:00
Ayaz Hafiz
cb2f85ed95
Fix some typos 2022-07-03 10:37:36 -04:00
Ayaz Hafiz
74a55664dd
Remove some unneeded changes 2022-07-03 10:37:36 -04:00
Ayaz Hafiz
8855f269ba
Make captures niche more private 2022-07-03 10:37:36 -04:00
Ayaz Hafiz
71d612078a
no_niche to represent lack of captures niche 2022-07-03 10:37:36 -04:00
Ayaz Hafiz
a5ea4f8c11
Remove references to multimorphic names 2022-07-03 10:37:35 -04:00
Ayaz Hafiz
641bd95d04
Make sure accessor closures get the name of their assigned def, if any 2022-07-03 10:37:35 -04:00
Ayaz Hafiz
276db791bd
Update capture niche tests 2022-07-03 10:37:35 -04:00
Ayaz Hafiz
d08aecf55f
Rename multimorphic tests to capture niche 2022-07-03 10:37:34 -04:00
Ayaz Hafiz
019ebd93f7
Put the capture niche in the lambda name instead of generating new names 2022-07-03 10:37:29 -04:00
ayazhafiz
1ed2e1a8e9
Improve test 2022-07-03 10:37:28 -04:00
ayazhafiz
ffa2ba1043
Fix solve tes 2022-07-03 10:37:28 -04:00
Ayaz Hafiz
98b310a604
Fix wasm test gen 2022-07-03 10:37:28 -04:00
Ayaz Hafiz
fe318488e2
Add more multimorphic gen tests 2022-07-03 10:37:28 -04:00
Ayaz Hafiz
28c1cf46a3
Multimorphic lambdas capture another lambda 2022-07-03 10:37:28 -04:00
Ayaz Hafiz
b69d538ea0
Add mono test cases 2022-07-03 10:37:27 -04:00
Ayaz Hafiz
806e2f5096
Make sure to properly preserve lambda set ordering 2022-07-03 10:37:27 -04:00
Ayaz Hafiz
1903ce4db9
Remove LambdaName::from_non_multimorphic 2022-07-03 10:37:27 -04:00
Ayaz Hafiz
9714376b64
Use one method for mutex 2022-07-03 10:37:27 -04:00
Ayaz Hafiz
eb400590cc
Clippy 2022-07-03 10:37:27 -04:00
Ayaz Hafiz
d63eb23664
Fix compile errors 2022-07-03 10:37:27 -04:00
Ayaz Hafiz
ada4b0ea43
Add test gen for multimorphic capture 2022-07-03 10:37:26 -04:00
Ayaz Hafiz
8be230695b
Get multimorphic lambda captures working 2022-07-03 10:37:26 -04:00
Ayaz Hafiz
88618c098d
Unify lambda sets with left/right closure capture differences 2022-07-03 10:37:26 -04:00
Ayaz Hafiz
5f8b509cb3
Fixup compile errors 2022-07-03 10:37:26 -04:00
Ayaz Hafiz
51978e08ed
First pass at supporting multimorphic lambdas in lambda sets 2022-07-03 10:37:26 -04:00
ayazhafiz
1c40ad6127
Check if function doesn't need closure arg without associated method 2022-07-03 10:37:25 -04:00
Ayaz Hafiz
ca87faa906
Allow union lambdas to have duplicates 2022-07-03 10:37:25 -04:00
Ayaz Hafiz
8fb9ccccfe
Allow captures to be marked as unified without having to be merged
It's very possible to unify two variables without their actual variable
numbers having been merged in the unification forest. We might want to
do that in the future, but it's not necessarily true today. For example
two concrete constructors `{}` and `{}` are unified by their contents,
but the variables are not necessarily merged afterward.
2022-07-03 10:37:25 -04:00
Ayaz Hafiz
cecb6987e7
Admit duplicate lambdas in lambda sets when their captures don't unify 2022-07-03 10:37:25 -04:00
Brian Carroll
b2c094ca07
Merge pull request #3379 from rtfeldman/wasm-box
Wasm box & unbox
2022-07-03 12:55:48 +01:00
Brian Carroll
817ffba982
formatting 2022-07-03 10:59:19 +01:00
Brian Carroll
7ea9854e49
wasm: Refactor and bug-fix copy_value_from_memory 2022-07-03 10:22:11 +01:00
Brian Carroll
07a432581f
wasm: start implementing Box and Unbox (bugs!) 2022-07-03 09:47:53 +01:00
Folkert de Vries
2a82d24847
Merge pull request #3369 from rtfeldman/pure-roc-list-walk
List.walk and friends in pure Roc
2022-07-03 02:32:43 +02:00
Folkert
2e0e867f32
format 2022-07-03 01:33:05 +02:00
Folkert de Vries
0d17f007d1
Merge pull request #3376 from rtfeldman/wasm-list-drop-at
implement List.dropAt for the wasm backend
2022-07-03 00:58:42 +02:00
Folkert de Vries
d2c07f350d
Merge pull request #3371 from rtfeldman/starts-with-scalar
Str.startsWithCodePt -> Str.startsWithScalar
2022-07-03 00:22:21 +02:00
Folkert de Vries
75b4b3a206
Merge pull request #3365 from rtfeldman/to-scalars
Add Str.toScalars builtin
2022-07-02 23:04:28 +02:00
Brian Carroll
94181111be
Merge branch 'trunk' of github.com:rtfeldman/roc into pure-roc-list-walk 2022-07-02 21:44:42 +01:00
Folkert
00397db8b6
implement List.dropAt for the wasm backend 2022-07-02 22:20:34 +02:00
Richard Feldman
af05723d35
Rename startsWithCodePt to startsWithScalar 2022-07-02 15:51:33 -04:00
Folkert
8d6cdb6577
shift -> multiply 2022-07-02 21:48:57 +02:00
Folkert
3792edec7f
rust format 2022-07-02 21:35:06 +02:00
Richard Feldman
c9e52b8311
Have startsWithCodePt share code with toScalars 2022-07-02 15:28:10 -04:00
Richard Feldman
cfb33cb414
Fix bug in 3-byte and 4-byte toScalars 2022-07-02 15:25:33 -04:00
Richard Feldman
077c37d9fb
Use alignCast over intToPtr 2022-07-02 15:22:29 -04:00