Commit graph

22 commits

Author SHA1 Message Date
Richard Feldman
4ea4aa4708
Merge pull request #2838 from rtfeldman/abilities-typechecking
Inference and checking for abilities
2022-04-13 22:03:44 -04:00
Ayaz Hafiz
41dd7d0b4d
Specialize bodies with body var, not function var
I'm surprised code generation worked so well without this, before...

Closes #2818
2022-04-13 18:35:50 -04:00
Ayaz Hafiz
865c1f15d7
Fix test compile errors, and simply load_internal tests 2022-04-12 16:42:51 -04:00
Ayaz Hafiz
64b559073d
Clippy 2022-04-12 16:18:07 -04:00
Ayaz Hafiz
15a040ec87
Basic type inference and solving for abilities
Note that is still pretty limited. We only permit opaque types to
implement abilities, abilities cannot have type arguments, and also no
other functions may depend on abilities
2022-04-12 16:18:07 -04:00
Nikita Mounier
2a56463b74
Fix typo in test_load. 2022-04-12 01:23:49 +00:00
Nikita Mounier
895ba92239
Change expected types in test_load. 2022-04-12 01:21:24 +00:00
Ayaz Hafiz
a3ac68a41f
Split up Defs into TypeDef and ValueDef
Just a refactoring PR. This is useful because during canonicalization
we always process type defs first, then value defs. With abilities this
distinction continues to grow; in that case, we have patterns associated
with types that we want to process before patterns from values.
2022-04-06 22:18:57 -04:00
Folkert
0dd2cec09a
update with new clippy lints 2022-03-31 19:34:51 +02:00
Folkert
fd527c2b4d
upgrate parking lot to 0.12 2022-03-30 00:14:28 +02:00
Folkert
e19cdaf34d
fix merge conflict 2022-03-26 22:08:30 +01:00
Folkert
8325f09de1
Merge remote-tracking branch 'origin/trunk' into cache-stdlib-modules 2022-03-26 21:58:05 +01:00
Folkert
e98dc68462
prevent panic 2022-03-24 22:40:47 +01:00
Folkert
8dba624156
refactor + thread through cached subs 2022-03-24 22:10:21 +01:00
Folkert
8c3bab908e
fix load tests 2022-03-24 00:12:53 +01:00
Folkert
afee877cf1
skeleton for caching stdlib subs 2022-03-23 21:19:38 +01:00
Folkert
4859f530cd
generate cached subs 2022-03-23 21:19:37 +01:00
Folkert
90887a6fe0
thread through cached_subs 2022-03-23 21:19:36 +01:00
Folkert
80b8635947
restructure how load is used 2022-03-23 21:19:36 +01:00
Folkert
0a6335e772
start on roc_load build.rs script for building the builtins 2022-03-23 21:19:34 +01:00
Folkert
7bb1fd88fa
add load_internal 2022-03-23 21:19:34 +01:00
Folkert
311e464b70
add load_internal 2022-03-23 15:18:22 +01:00