Folkert
6c79048f9b
improve closure pretty printing
2020-10-18 20:12:53 +02:00
Folkert
1439c1a21d
clippy complaints
2020-10-17 22:37:15 +02:00
Folkert
ca2efc27bd
Merge remote-tracking branch 'origin/trunk' into sized-functions-inference
2020-10-15 14:34:32 +02:00
Richard Feldman
56e600d988
Merge branch 'trunk' into top-level-thunks
2020-10-14 21:00:51 -04:00
Folkert
ed592d3d10
refactor solve_module
2020-10-14 22:28:53 +02:00
Folkert
de8ad07f2e
Merge branch 'top-level-thunks' into sized-functions-inference
2020-10-14 21:58:53 +02:00
Folkert
729e16cad9
clippy
2020-10-14 21:42:22 +02:00
Folkert
106024b4bb
fix bug converting recursive tag union to solved type
2020-10-14 16:57:43 +02:00
Brendan Hansknecht
eb7e39bf7b
Make clippy happy
2020-10-13 20:26:00 -07: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
e9f5c1a73c
actually infer the size
2020-10-02 22:33:31 +02:00
Folkert
c00cd2f415
hook everything up in the gen tests
2020-10-02 21:04:42 +02:00
Folkert
05d1f28e83
add logic to generate/solve closure size constraints
2020-10-02 20:46:47 +02:00
Folkert
a0c6952258
fix problem in uniqueness inference
2020-10-02 01:08:37 +02:00
Folkert
2e1e87ad6a
add closure size variable
2020-10-02 00:53:02 +02:00
Sébastien Besnier
f319fdad79
Tag with no args in error msgs ( #471 )
2020-09-05 08:42:40 +02:00
Richard Feldman
274e7e786d
Constrain string interpolation
2020-08-31 23:13:50 -04:00
Richard Feldman
3c8c41c145
Clipster
2020-08-24 00:03:12 -04:00
Richard Feldman
181cf10d2c
Replace TagName::into_string with as_string
2020-08-24 00:03:12 -04:00
Richard Feldman
c5f5bb1bef
Use sorted field names for printing records
2020-08-24 00:03:12 -04:00
Richard Feldman
51c0180f45
Don't have formatter print parens in field types
2020-08-24 00:02:59 -04:00
Folkert
b45b39af5e
optional fields improvements
2020-07-21 15:25:21 +02:00
Folkert
e93c04a8ce
improved error messages for function definitions
2020-07-20 21:38:21 +02:00
Richard Feldman
7330e82f75
Constrain optional fields
2020-07-18 14:51:18 -04:00
Richard Feldman
85f51ef39d
Introduce optional record fields
2020-07-18 12:31:17 -04:00
Richard Feldman
da620947ff
Use debug_assert_eq! more
2020-07-10 00:06:45 -04:00
Richard Feldman
1cd49689c2
Merge remote-tracking branch 'origin/trunk' into low-level-ops
2020-07-07 21:09:50 -04:00
Folkert
ea314be5a2
sort in pretty printing for stable results
2020-07-06 21:46:15 +02:00
Richard Feldman
909b273083
Merge branch 'trunk' into annotation-def-match
2020-07-02 19:10:50 -04:00
Folkert
5c81b46d1c
remove clone
2020-07-02 23:22:55 +02:00
Folkert
a3c1788d48
Allelujah! Don't Trust! Assert!
2020-06-30 15:15:58 +02:00
Folkert
36e6950daa
ensure VarId always encodes root var
...
otherwise variables with the same root, but different values would be different once imported in another module
2020-06-30 15:03:30 +02:00
Richard Feldman
8c96d12661
Merge trunk
2020-06-29 22:10:46 -04:00
Folkert
b4480e212a
fix uniqueness attribute on nested recursive aliases
2020-06-29 17:08:39 +02:00
Folkert
3fc2323891
fix recursion bug
...
previously, `Cons 1 (Cons {} Nil)` would get inferred as ConsList Int, because only the outer layer of a tag union was checked with the recursive tag union. Now this is done continually.
2020-06-29 00:18:50 +02:00
Folkert
e4384753fb
add comments about alias uvar instantiation
2020-06-29 00:18:50 +02:00
Folkert
55e1e86dc2
cleanup
2020-06-27 23:56:53 +02:00
Folkert
229d98483c
add docs
2020-06-27 23:27:00 +02:00
Folkert
41621bc509
fix test outputs
...
in some cases for aliases the outputs are not entirely correct yet. That's future work
2020-06-27 21:01:51 +02:00
Folkert
79f01e0604
loads of things
2020-06-27 16:20:30 +02:00
Folkert
e5997c4047
fix mutual recursive types
...
I'll write a bit more about this in the PR message
2020-06-26 01:03:55 +02:00
Folkert
055b01c463
rewrite uniqueness logic
2020-06-24 23:06:34 +02:00
Richard Feldman
f350c0ed52
Fix List.len monomorphization
2020-06-23 21:14:23 -04:00