Commit graph

587 commits

Author SHA1 Message Date
Ayaz Hafiz
5c64e62d89
Correct encoding deriver for records 2022-06-15 14:26:55 -04:00
Ayaz Hafiz
f1fa29fcfc
First pass at derived record encoder 2022-06-15 14:26:55 -04:00
Ayaz Hafiz
6db6e166a5
Include unspecialized lambda sets in subs snapshot 2022-06-13 08:40:50 -04:00
Ayaz Hafiz
bbee0dde25
Debug unspecialized lambda sets 2022-06-13 08:39:15 -04:00
Ayaz Hafiz
0deca3ffb5
Resolve specialization lambda sets in abilities store 2022-06-09 14:20:07 -04:00
Folkert de Vries
9ab0a8f41d
Merge pull request #3201 from rtfeldman/addt-uls-fixes
Additional unspecialized lambda set fixes and tests
2022-06-08 16:00:30 +02:00
Ayaz Hafiz
5b8d24d823
Use with_capacity 2022-06-07 16:23:42 -04:00
Ayaz Hafiz
4b42205b03
Instantiate unspecialized lambda sets under aliases and opaques 2022-06-07 14:41:42 -04:00
Ayaz Hafiz
3df5be6528
Some cleanup 2022-06-07 12:17:03 -04:00
Ayaz Hafiz
3f3d9d035e
Clippy and format 2022-06-07 10:44:43 -04:00
Ayaz Hafiz
3dc0793557
Add debug print for unification table 2022-06-07 10:35:19 -04:00
Ayaz Hafiz
0476d4a65c
Remove unspecialized following unification links 2022-06-07 08:46:16 -04:00
Ayaz Hafiz
4339bfaed6
Print lambda sets on-demand 2022-06-07 08:46:15 -04:00
Ayaz Hafiz
d71fadd8b0
Resolve and compact specialized lambda sets 2022-06-07 08:46:15 -04:00
Ayaz Hafiz
d8888fc696
Bookkeeping for unspecialized lambda sets 2022-06-07 08:46:15 -04:00
Ayaz Hafiz
feea727697
Introduce unspecialized lambda sets to Content::LambdaSet 2022-06-07 08:46:13 -04:00
Ayaz Hafiz
c17525aa4d
Differentiate type variables with the same rigid name during pretty-printing 2022-06-04 15:29:52 -05:00
Ayaz
9f6da8df53
Merge pull request #3162 from rtfeldman/remove-ena
remove ena dependency
2022-06-03 13:56:03 -05:00
Folkert de Vries
84970f3c74
Merge pull request #3169 from rtfeldman/unspecialized-lambda-set
Add Type::UnspecializedLambdaSet variant
2022-06-03 18:43:00 +02:00
Folkert
d4efd0d167
fix merge conflict 2022-06-03 18:18:53 +02:00
Folkert
fd233764c2
Merge remote-tracking branch 'origin/trunk' into remove-ena 2022-06-03 18:16:19 +02:00
Ayaz Hafiz
fd08918ef9
Simplify mut iter 2022-06-03 10:28:48 -05:00
Ayaz Hafiz
09ac1d7555
clippy 2022-06-02 16:06:56 -05:00
Folkert de Vries
c436ac98e2
Merge pull request #3167 from rtfeldman/no-more-tagname
Remove TagName on the front end
2022-06-02 22:52:08 +02:00
Ayaz Hafiz
fe85cdc3c2
Remove Subs::restore
Looks like this is unneeded. One less large type walker to update
2022-06-02 12:28:02 -05:00
Ayaz Hafiz
7ed1cf2459
Use a nested variant to represent unspecialized lambda sets
We'll reuse this in subs
2022-06-02 12:09:13 -05:00
Folkert
b76fc123d0
Merge remote-tracking branch 'origin/trunk' into remove-ena 2022-06-02 18:29:20 +02:00
Ayaz Hafiz
42614d30ed
Add test for instantiating unspecialized lambda sets 2022-06-02 11:24:41 -05:00
Ayaz Hafiz
3cd60e15d0
Add instantiation of unspecialized lambda sets for abilities 2022-06-02 11:01:27 -05:00
Ayaz Hafiz
af38860f07
Add Type::UnspecializedLambdaSet variant 2022-06-02 10:12:44 -05:00
Ayaz Hafiz
873271b02d
Remove unused impl 2022-06-02 09:44:39 -05:00
Ayaz Hafiz
7421e444b1
Remove unnecessary SubsFmtContent 2022-06-02 09:44:38 -05:00
Ayaz Hafiz
bde107da49
Remove TagName in favor of explicit TagName or Closure
Note that we still need a `TagOrClosure` enum for phases past mono, but
at least we get rid of the branches in the front end.
2022-06-02 09:44:34 -05:00
Ayaz Hafiz
2c62f9b5ba
s/occurence/occurrence 2022-06-01 13:18:55 -05:00
Ayaz Hafiz
5b7f4ef5ec
Clippy 2022-06-01 13:18:55 -05:00
Ayaz Hafiz
0fa4aa8cbd
Simplify maybe_mark_union_recursive 2022-06-01 13:18:55 -05:00
Ayaz Hafiz
591528d8a3
Handle case where lambda set is unbound 2022-06-01 13:18:55 -05:00
Ayaz Hafiz
c66f989467
Recursive closure layout working again in effect test 2022-06-01 13:18:54 -05:00
Ayaz Hafiz
2e70c9aba4
Getting closer. Checking in for a break. 2022-06-01 13:18:53 -05:00
Ayaz Hafiz
790eb8e20c
Lambda sets don't need extension vars 2022-06-01 13:18:03 -05:00
Ayaz Hafiz
c2a2ce690c
Lift lambda sets as their own type
This prepares for unspecialized lambda set in the type system in
general.
2022-06-01 13:17:22 -05:00
Ayaz Hafiz
3fc95bad90
Remove unused lambda set struct 2022-06-01 13:14:00 -05:00
Folkert
9540aa5b70
make deep_copy_var non-recursive 2022-06-01 17:59:35 +02:00
Folkert
0022f345ac
remove ena dependency 2022-06-01 15:33:19 +02:00
Folkert
d72ebf4b74
formatting for Defs 2022-05-25 14:58:36 +02:00
Richard Feldman
4eec34becf
Update to use new square brace formatting 2022-05-22 23:15:54 -04:00
Richard Feldman
a4a5f438e6
Update type pretty-printing 2022-05-22 18:35:56 -04:00
Folkert
fb37d925dc
deal with aliases around number types 2022-05-21 21:28:31 +02:00
Folkert
99a879d795
cleanup 2022-05-21 20:56:56 +02:00
Folkert
d43bda83b4
cleanup 2022-05-21 20:50:06 +02:00