Richard Feldman
40aca3c20d
Remove another gazillion allocations from reporting
2022-04-19 20:53:44 -04:00
Richard Feldman
3f698c9878
Remove a gazillion allocations from reporting
2022-04-19 20:53:44 -04:00
Folkert
833aecbf8a
fix name
2022-04-18 22:05:06 +02:00
Folkert
1c8b18f176
import Box by default
2022-04-18 21:43:16 +02:00
Folkert
2c0b29efd1
use VecSet in IntroducedVariables
2022-04-17 20:53:54 +02:00
Folkert
7b81c59009
Merge branch 'vecset-references' into builtins-in-roc
2022-04-17 20:32:38 +02:00
Folkert
304b7fd569
use VecSet for exposed_symbols
2022-04-17 20:23:29 +02:00
Folkert
8692938fb3
Merge branch 'vecset-references' into builtins-in-roc
2022-04-17 19:39:03 +02:00
Folkert
2784affbc1
skip constraint gen for cached modules
2022-04-17 14:51:56 +02:00
Folkert
d7d884b4f7
cleanup
2022-04-17 13:55:21 +02:00
Folkert
90a980a3e9
remove debug code
2022-04-17 13:54:53 +02:00
Richard Feldman
718b999751
Merge pull request #2857 from rtfeldman/abilities-mono
...
Codegen for abilities
2022-04-16 22:59:16 -04:00
Folkert
e112f6ad2c
Merge remote-tracking branch 'origin/trunk' into builtins-in-roc
2022-04-16 21:01:51 +02:00
Ayaz Hafiz
491ec0034a
Don't try to send type problems over module boundaries
...
Closes #2863
Closes #2858
2022-04-15 10:01:26 -04:00
Ayaz Hafiz
eb81c68bcb
Pass abilities store to mono
2022-04-14 16:20:55 -04:00
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
Folkert
2b07b8c78d
Merge remote-tracking branch 'origin/trunk' into builtins-in-roc
2022-04-13 21:45:40 +02:00
Folkert
493a96d85b
mark the builtin files as such so builtin function implementations are inserted
2022-04-13 21:40:08 +02: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
Folkert
e281ca7152
remove dependency
2022-04-10 21:42:39 +02:00
Folkert
2cb175df10
use cached subs, run solve tests single-threaded
2022-04-10 21:22:15 +02:00
Folkert
78735b6159
remove unused code
2022-04-10 21:15:29 +02:00
Folkert
a15ff20eec
give back the subs of the root module (for the repl)
2022-04-09 14:11:50 +02:00
Folkert
166c949c3b
clippy
2022-04-09 12:24:12 +02:00
Folkert
37bb19b032
for now always generate constraints
2022-04-09 12:13:20 +02:00
Folkert
e9f7427c67
fix some things in Num
2022-04-08 20:24:17 +02:00
Folkert
4dafe08544
better debug messages
2022-04-08 19:51:20 +02:00
Folkert
ffd4566c29
remove code that saves Subs to a .dat file (it's located elsewhere now)
2022-04-08 19:51:05 +02:00
Folkert
beee95f83c
parse the header of builtins too
2022-04-08 16:02:30 +02:00
Folkert
1d0f9e9192
Merge remote-tracking branch 'origin/trunk' into builtins-in-roc
2022-04-08 15:47:11 +02: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
6353ee095f
use stdlib source from .roc files
2022-03-23 17:43:30 +01:00