Commit graph

248 commits

Author SHA1 Message Date
Anton-4
eee85fa45d
moved all crates into seperate folder + related path fixes 2022-07-01 17:37:43 +02:00
Ayaz Hafiz
d648beff0b
Fix constrained 2022-06-26 15:28:19 -04:00
Ayaz Hafiz
a5fbe5cfec
Add test for inference variables in value/def signatures 2022-06-26 14:55:26 -04:00
Ayaz
857052778f
Merge pull request #3287 from rtfeldman/pipeline-derived
Thread derived ability member name generation through the compiler
2022-06-26 12:47:01 -04:00
Folkert
c636cd6d2b
typecheck functions with alias (or weird) type annotations 2022-06-25 21:43:01 +02:00
Ayaz Hafiz
76a3772898
Update solve tests with derived functions 2022-06-24 08:56:30 -04:00
Ayaz Hafiz
fdba8b26d4
Add test for types of destructed recursive alias in issue 2022-06-22 11:16:42 -04:00
Ayaz Hafiz
d9cda8992a
Add test for self-recursive inference with partial type annotation
The removed TODO is not technically a soundness bug, but it is a bit
frusturating. Unfortunately the fix is non-obvious (we must no longer
take rigid annotations as a source-of-truth, but instead fix them up
afterward). It may have disparate consequences, so let's punt for now.
2022-06-17 17:37:15 -04:00
Ayaz Hafiz
f27a841bec
Correct soundness bug with the presence of inference variables 2022-06-17 17:37:14 -04:00
Ayaz Hafiz
c9ca3effbc
Record bug in solver 2022-06-17 17:37:13 -04:00
Ayaz Hafiz
8062b44d11
Add list of lambdas type test 2022-06-15 14:26:55 -04:00
Ayaz Hafiz
7d814564f3
Add recursive ability lambda set resolve tests 2022-06-07 15:00:19 -04:00
Ayaz Hafiz
e1db1c4c76
Handle specializing the same lambda set 2022-06-07 14:53:07 -04:00
Ayaz Hafiz
4b42205b03
Instantiate unspecialized lambda sets under aliases and opaques 2022-06-07 14:41:42 -04:00
Ayaz Hafiz
9b4ae7bac1
Deduplicate unspecialized lambda sets by root key 2022-06-07 10:42:19 -04:00
Ayaz Hafiz
90fc08f8df
Compaction of lambda sets must deep copy vars into the right rank 2022-06-07 10:37:13 -04:00
Ayaz Hafiz
6a76951255
Add some tests for unspecialized lambda sets 2022-06-07 09:34:12 -04:00
Ayaz Hafiz
8b78e92051
Include specialization symbols 2022-06-07 08:46:16 -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
c17525aa4d
Differentiate type variables with the same rigid name during pretty-printing 2022-06-04 15:29:52 -05:00
Richard Feldman
4eec34becf
Update to use new square brace formatting 2022-05-22 23:15:54 -04:00
Ayaz Hafiz
95e325296f
Solve derived impls 2022-05-19 18:23:02 -04:00
Ayaz Hafiz
0e63efdf09
Scaffold tests 2022-05-19 18:23:02 -04:00
Ayaz Hafiz
253cca63ea
Add solve test 2022-05-19 18:21:43 -04:00
Ayaz Hafiz
697f5f7a86
Check in ignored tests 2022-05-11 18:12:37 -04:00
Ayaz
d485869954
Merge pull request #3039 from rtfeldman/specializations-at-the-front
Opportunistically resolve specializations during solving
2022-05-11 13:42:19 -04:00
Ayaz Hafiz
eca069bb4a
Test static specializations 2022-05-11 08:53:41 -04:00
Richard Feldman
fd40fed937
Fix a bunch of errors from clippy --tests 2022-05-10 15:21:48 -04:00
Ayaz Hafiz
a9507cf917
Consolidate variable pretty printing 2022-05-10 11:24:41 -04:00
Ayaz Hafiz
3497237c99
Print recursion vars correctly 2022-05-10 10:40:37 -04:00
Ayaz Hafiz
7306e131b9
Add test for resolved issue
Closes #2371
2022-05-10 09:42:35 -04:00
Richard Feldman
df7df4ccf8
Merge branch 'trunk' into mfonism/rename-num-float-type-to-frac 2022-05-08 20:54:33 -04:00
Ayaz
d0bd08dbe0 Typo 2022-05-08 15:08:19 -04:00
Ayaz Hafiz
b3845c21bd Print able type variables correctly 2022-05-08 15:08:19 -04:00
Ayaz Hafiz
13884c4ce6 Fix solve test 2022-05-08 15:08:18 -04:00
Ayaz Hafiz
85b3110bea Typecheck decoder 2022-05-08 15:08:18 -04:00
Ayaz Hafiz
f48792a173 Add encoder tests 2022-05-08 15:08:16 -04:00
Ayaz Hafiz
2e57bf0b6a Permit able variables in aliases, and thread them through 2022-05-08 15:08:14 -04:00
Ayaz Hafiz
45134a547d Update solve test 2022-05-08 15:07:27 -04:00
Ayaz Hafiz
c67bc5a8d6 Remove when-related changes 2022-05-08 15:07:27 -04:00
Ayaz Hafiz
b5efd830e5 Solve and gen ability members that bind other able variables 2022-05-08 15:07:27 -04:00
Mfon Eti-mfon
9068c2414e
Rename float functions and vars 2022-05-08 18:42:12 +01:00
Ayaz Hafiz
7e234d4550
Instantiate aliases in delayed alias args 2022-05-06 16:04:47 -04:00
Ayaz Hafiz
fe28d1554b
Only assert that rigids are introduced at given rank behind flag
Closes #2489
2022-04-29 16:26:10 -04:00
Ayaz
98a3523702
Merge pull request #2961 from rtfeldman/improved-identids
Improved identids
2022-04-27 10:11:06 -04:00
Folkert
d18c46550f
fix test building 2022-04-27 01:28:31 +02:00
Richard Feldman
6da39aa296
Merge pull request #2917 from rtfeldman/move-exhaustiveness-checking
Moves exhaustiveness checking to type solving phase
2022-04-25 20:55:05 -04:00
Ayaz Hafiz
85e3373d8b
Move exhaustiveness checking to type checking 2022-04-25 19:04:09 -04:00
Ayaz Hafiz
356616d834
Move exhaustiveness checking to type solving phase with solve tests 2022-04-25 19:04:08 -04:00