Commit graph

105 commits

Author SHA1 Message Date
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