Richard Feldman
d1ba89f97f
Fix an extraneous newline in formatting
2022-07-03 22:38:26 -04:00
Richard Feldman
244a501433
Indent for multiline | patterns
2022-07-03 22:17:13 -04:00
Richard Feldman
872efa9724
Put a space before comments in patterns
2022-07-03 21:59:00 -04:00
Richard Feldman
3e2f581db4
Reproduce formatter bug
2022-07-03 21:58:59 -04:00
Richard Feldman
e4d09e9e59
Drop obsolete comment
2022-07-03 21:57:56 -04:00
Ayaz Hafiz
cda740a472
Correct LLVM box eq build
2022-07-03 20:08:23 -04:00
Brian Carroll
6b1e9c75c8
mono: generate refcounting helper functions for Boxed layout
2022-07-03 23:31:49 +01:00
Ayaz Hafiz
35243e0efe
Leftover file cleanup
...
- Remove a toplevel directory accidentally re-added in #3352
- Remove mono tests renamed but not properly removed in #3352
2022-07-03 16:53:06 -04:00
Ayaz Hafiz
ba1a3fa62e
Remove unnecessary import
2022-07-03 16:49:09 -04:00
Ayaz Hafiz
2726a3506f
Remove tag_name from Expr::Tag
2022-07-03 16:48:51 -04:00
Ayaz Hafiz
2d169bf518
Remove tag_name from ResetReuse
2022-07-03 16:47:01 -04:00
Folkert
5904934887
rename countBytes -> countUtf8Bytes
2022-07-03 21:49:01 +02:00
Folkert
5f2c7c5b5e
update mono tests
2022-07-03 20:26:04 +02:00
Folkert
65f80b61c6
add Str.walkUtf8WithIndex
2022-07-03 20:24:08 +02:00
Folkert
eeb271d07f
Str.splitFirst and Str.splitLast
2022-07-03 19:47:06 +02:00
Brian Carroll
7c7e450756
mono: generate Eq functions for Boxed layout
2022-07-03 18:42:35 +01:00
Folkert
be3800d7fa
add substringUnsafe roc function
2022-07-03 17:15:25 +02:00
ayazhafiz
671a19b29d
Fix mono
2022-07-03 10:39:55 -04:00
ayazhafiz
71e3e0baff
Add dedup niche test golden
2022-07-03 10:37:40 -04:00
ayazhafiz
3385c708c6
Deduplicate capture niches
2022-07-03 10:37:40 -04:00
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
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
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
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