Commit graph

7453 commits

Author SHA1 Message Date
Folkert
b6f7f77aae
Revert "inline subs operations more aggressively"
This reverts commit f4cb2ec254.

it'll be merged by a different PR
2022-03-20 20:12:20 +01:00
Folkert
c7656955f8
add Subs (de)serialization 2022-03-20 20:03:02 +01:00
Folkert
a601b93a46
start of serializing subs 2022-03-20 12:55:14 +01:00
Folkert
f4cb2ec254
inline subs operations more aggressively 2022-03-20 02:07:48 +01:00
hafiz
3f07afe3b5
Merge pull request #2750 from rtfeldman/delay-instantiating-aliases-fix-limitations
Delay instantiating aliases fix limitations
2022-03-19 20:41:14 -04:00
hafiz
418e71e95c
Merge pull request #2755 from rtfeldman/dense-let-constraints
Constraint gen tweaks
2022-03-19 20:39:55 -04:00
Folkert
45863769eb
fix transitive imported aliases not being passed along 2022-03-20 00:03:20 +01:00
Folkert
7f92de69ab
some comments 2022-03-19 23:44:28 +01:00
Folkert
a1dbdf34d5
simplify empty let constraint 2022-03-19 23:41:56 +01:00
Folkert
a20a828ee1
refactor typed function constraint gen 2022-03-19 23:41:33 +01:00
Folkert
6aaef49aa7
don't create IsOpenType constraint for obvious non-types 2022-03-19 21:40:16 +01:00
Folkert
f5ebc5bec9
add some Constraints statistics reporting 2022-03-19 20:50:22 +01:00
Folkert
9ac194a3b3
store Str.Str type in a compact way 2022-03-19 20:49:39 +01:00
Folkert de Vries
68195cc14e
Merge pull request #2753 from rtfeldman/introduced-variables-mapping
Introduced variables mapping
2022-03-19 19:57:31 +01:00
Folkert
147ab87e9c
disable type clone count atomic in release mode 2022-03-19 19:28:24 +01:00
Folkert
55d9dc745c
track if an alias is exposed 2022-03-19 17:10:29 +01:00
Folkert
62ca9ba8d0
make timing info available in check mode 2022-03-19 16:27:14 +01:00
Richard Feldman
5f2054aeb6
Merge pull request #2754 from rtfeldman/remove-type-solvedtype-conversion
Remove Type/Subs -> SolvedType conversion
2022-03-19 10:48:42 -04:00
hafiz
5eb0791bb3
Merge pull request #2752 from rtfeldman/type-nitpicks
various small type-related changes
2022-03-19 10:13:56 -04:00
Folkert
5a15a121ff
remove Content -> SolvedType conversion 2022-03-19 12:26:21 +01:00
Folkert
da0c6adff3
remove Type -> SolvedType conversion 2022-03-19 12:20:15 +01:00
Folkert
1429b105a1
use (name, variable) pair as the unique key 2022-03-19 12:13:13 +01:00
Folkert
f804c88711
spelling 2022-03-19 00:29:57 +01:00
Folkert
dcd86711ec
combine aliases 2022-03-19 00:27:32 +01:00
Folkert de Vries
7589ab0c95
Merge pull request #2739 from rtfeldman/wasm-function-names
Wasm: add Roc procedure names to debug info
2022-03-19 00:13:25 +01:00
Folkert
ce4f47d2e9
remove clones in IntroducedVariables clone 2022-03-19 00:03:30 +01:00
Folkert
4e315797b0
expose ImMap entry 2022-03-19 00:00:56 +01:00
Folkert
9b63e6a3a9
simplify IntroducedVariables 2022-03-18 23:47:39 +01:00
Folkert
21a51464f3
various small type-related changes 2022-03-18 22:35:12 +01:00
Folkert
bf063d1d57
use all aliases that are in scope (to support imported aliases) 2022-03-18 20:44:13 +01:00
Folkert
5196ae9df2
use old alias instantiation when checking for invalid recursion 2022-03-18 20:20:22 +01:00
Folkert
2b2db5e4fe
fix variable name 2022-03-18 20:13:48 +01:00
Folkert
83225cc469
ensure lambda set variables are freshly instantiated when instantiating an alias 2022-03-18 20:11:55 +01:00
Folkert
0b74fcd07b
add test of alias of alias with type variables but without lambda set 2022-03-18 20:10:49 +01:00
Folkert
d6f0005fb3
bubble up lambda sets used by inner aliases 2022-03-18 20:04:07 +01:00
Folkert
a4ce6815d2
clarify variable name 2022-03-18 20:03:03 +01:00
Folkert
fc83865465
deal with the lambda set in more cases 2022-03-18 18:53:17 +01:00
Brian Carroll
136b42cbeb formatting 2022-03-18 15:17:45 +00:00
Brian Carroll
549b4be907 test_gen: change styling in wasm test debugger 2022-03-18 14:58:48 +00:00
Brian Carroll
21ee531e8c wasm: Add Roc procedure names to Names section for debug 2022-03-18 14:46:53 +00:00
Folkert
a3b00fbf55
Merge branch 'explicit-closed-tag-record' into delay-instantiating-aliases 2022-03-17 20:34:52 +01:00
Folkert
f8a73e0baa
use unreachable! 2022-03-17 19:50:16 +01:00
Folkert
be07cbe49d
remove instrumentation 2022-03-17 19:48:35 +01:00
Folkert
0d28b5f475
disable printing of type clone count 2022-03-17 19:32:46 +01:00
Folkert
426bfe3ff1
implement solve crate 2022-03-17 19:31:54 +01:00
Folkert
b1612384c7
implement constrain crate 2022-03-17 19:17:52 +01:00
Folkert
34e566965d
implement can crate 2022-03-17 19:04:24 +01:00
Folkert
4545e76b76
implement in the types crate 2022-03-17 19:00:08 +01:00
Folkert
3d5a93a4e6
make substitute use an explicit stack 2022-03-17 18:33:00 +01:00
Folkert
8144d7b390
the setup 2022-03-17 18:24:22 +01:00