Commit Graph

8888 Commits

Author SHA1 Message Date
Ayaz
e5eb9c9f1c
Merge pull request #3052 from rtfeldman/build-encode
Encode/JSON in standard library typechecks
2022-05-19 21:16:59 -04:00
ayazhafiz
7a732c7d4a
Fix ability formatting 2022-05-19 18:30:36 -04:00
Ayaz Hafiz
c7dacb879c
Ignore derived for now 2022-05-19 18:29:31 -04:00
Ayaz Hafiz
e78b345ee0
Format has-derived clauses 2022-05-19 18:29:31 -04:00
Ayaz Hafiz
fcf464e9da
Parse has-derived clauses 2022-05-19 18:29:31 -04:00
Ayaz Hafiz
768121e431
Don't allocate for missing or existing members by default
- Missing members are zero in the happy case
- Existing members will always be populated in the happy case, but I
  don't think they improve the error message, so just get rid of it.
2022-05-19 18:25:42 -04:00
Ayaz Hafiz
b03e713b7f
Clippy 2022-05-19 18:23:03 -04:00
Ayaz Hafiz
95e325296f
Solve derived impls 2022-05-19 18:23:02 -04:00
Ayaz Hafiz
cf56b5015a
Fix existing reporting tests 2022-05-19 18:23:02 -04:00
Ayaz Hafiz
2c87214b44
Check derivability of abilities for structural types 2022-05-19 18:23:02 -04:00
Ayaz Hafiz
0e63efdf09
Scaffold tests 2022-05-19 18:23:02 -04:00
Ayaz Hafiz
bb0777c3c8
Revert "Add a content visitor"
This reverts commit 70b923e3fe8307275f6a0de422e6d35d91afb1eb.
2022-05-19 18:23:02 -04:00
Ayaz Hafiz
83a8d360c1
Add a content visitor 2022-05-19 18:23:02 -04:00
Ayaz Hafiz
d499c06678
Remove unused function 2022-05-19 18:23:01 -04:00
Ayaz Hafiz
4dede6e570
Simplify instantiate aliases 2022-05-19 18:21:45 -04:00
Ayaz Hafiz
935ae50dd4
Format Encode 2022-05-19 18:21:45 -04:00
Ayaz Hafiz
0c5e903d2a
Make spaces before ability are recorded 2022-05-19 18:21:45 -04:00
ayazhafiz
b1d46d87ae
Fix ability formatting 2022-05-19 18:21:44 -04:00
ayazhafiz
355b573695
Format Json 2022-05-19 18:21:44 -04:00
ayazhafiz
6f51eb09dd
Don't expose specializations to host 2022-05-19 18:21:44 -04:00
Ayaz Hafiz
253cca63ea
Add solve test 2022-05-19 18:21:43 -04:00
Ayaz Hafiz
6d19f31574
Remove mono-related changes for now 2022-05-19 18:21:43 -04:00
Ayaz Hafiz
3f4336d15a
Save ability specializations
Unfortunately not enough...
2022-05-19 18:21:42 -04:00
Ayaz Hafiz
f8cf18b10e
Remove ExposedModuleTypes::Invalid 2022-05-19 18:21:42 -04:00
Ayaz Hafiz
1beb0551cb
Expose ability names 2022-05-19 18:21:42 -04:00
Ayaz Hafiz
95395ffc5f
Remove debugs 2022-05-19 18:21:41 -04:00
Ayaz Hafiz
ce6ef38477
Clippy 2022-05-19 18:21:41 -04:00
Ayaz Hafiz
f1e09fbe78
Pass ability specializations back down 2022-05-19 18:21:41 -04:00
Ayaz Hafiz
3c49c187ba
Encode symbols 2022-05-19 18:21:41 -04:00
Ayaz Hafiz
28d6f30cc7
Fix type errors 2022-05-19 18:21:40 -04:00
Ayaz Hafiz
0f4be93e44
Add JSON builtin, pass along solved specializations per module 2022-05-19 18:21:40 -04:00
Ayaz Hafiz
312cdd0b70
Correct imports of Encode and abilities across modules 2022-05-19 18:21:40 -04:00
Ayaz Hafiz
47c9959786
Cleanup JSON module 2022-05-19 18:21:39 -04:00
Ayaz Hafiz
fa14d0d746
Scaffold JSON 2022-05-19 18:21:39 -04:00
Ayaz Hafiz
8119dc25ff
Scaffold Encode module 2022-05-19 18:21:39 -04:00
Ayaz Hafiz
921f95a5b6
Ability docs 2022-05-19 18:21:38 -04:00
Richard Feldman
1047c5635a
Merge remote-tracking branch 'origin/trunk' into test-bindgen 2022-05-19 14:10:53 -04:00
Sean Hagstrom
08777434b6
formatter: support removing blank lines between all when branches in when expressions 2022-05-19 09:26:04 +01:00
Sean Hagstrom
802422e6f4
formatter: support removing blank lines between when branches if all branches are single line 2022-05-19 09:07:31 +01:00
Sean Hagstrom
7def844302
formatter: support allowing single line value expressions in when expressions 2022-05-19 09:07:30 +01:00
Sean Hagstrom
1f98691929
formatter: refactor code for formatting when expressions 2022-05-19 09:07:30 +01:00
Ayaz
1c43bbee47
Merge pull request #3092 from rtfeldman/i3091
Turn on formatting tests for stdlib
2022-05-18 21:41:56 -04:00
Richard Feldman
0f3709da6f
Merge pull request #3090 from rtfeldman/expr-blank 2022-05-18 21:25:07 -04:00
Ayaz Hafiz
50769b81e6
Format other stdlib modules 2022-05-18 15:40:02 -04:00
Ayaz Hafiz
f2eb87a524
Format Dict 2022-05-18 15:32:36 -04:00
Ayaz Hafiz
4cb828987e
Format Box 2022-05-18 15:27:39 -04:00
Ayaz Hafiz
e293a8d4fa
Format Num, Str and fix off-by-one bug 2022-05-18 15:26:21 -04:00
Ayaz Hafiz
521f1e2c6c
Format bool builtins 2022-05-18 14:31:44 -04:00
Ayaz Hafiz
33945a7d5c
Add env var for workspace root and scaffold builtins fmt test 2022-05-18 14:30:03 -04:00
Richard Feldman
c1cc255403
Merge pull request #3076 from rtfeldman/fix-release-warnings
Fix --release warnings
2022-05-18 13:00:41 -04:00
Folkert
b390907610
stay within bounds 2022-05-18 18:06:57 +02:00
Ayaz Hafiz
e1c432061b
Reorder so clippy doesn't complain 2022-05-18 11:15:03 -04:00
Folkert
f285e7ce93
add a TypedHole node to Expr, for use in the editor 2022-05-18 16:39:24 +02:00
Ayaz Hafiz
6a9d7e07e7
Mono problems aren't a thing anymore 2022-05-18 10:07:59 -04:00
Ayaz Hafiz
a8265426df
Simplify ExposedModuleTypes
The `Invalid` variant was never constructed, so we can eliminate it.
2022-05-18 09:59:37 -04:00
Folkert
541590f9d9
use simd in actual comment parsing 2022-05-18 15:39:58 +02:00
Richard Feldman
9c72e5e8ed
Remove unnecessary -> () function return types 2022-05-18 08:29:40 -04:00
Richard Feldman
7a353f0e0c
Fix --release warnings 2022-05-18 08:20:22 -04:00
Richard Feldman
2c09907116
Merge pull request #3078 from rtfeldman/formatter-multiline-fn-type-annotated-bodies
Fix multi-line function type annotations for annotated bodies
2022-05-17 23:25:21 -04:00
Richard Feldman
56896f7624
Merge pull request #3080 from rtfeldman/formatter-cli-panic-ast-diff
Fix AST normalization of TypeHeaders in Aliases for CLI formatter
2022-05-17 23:23:10 -04:00
Richard Feldman
ef05462292
Merge pull request #3085 from rtfeldman/fast-comment-simd
try to use simd in comment parsing
2022-05-17 23:19:42 -04:00
Folkert
970b2c94f2
fix conditional compilation 2022-05-18 01:36:56 +02:00
Folkert
381f188409
fix import 2022-05-18 00:57:07 +02:00
Folkert
500382c900
use simd on supported platforms 2022-05-18 00:54:54 +02:00
Folkert
95bf8bb505
scope.lookup_str 2022-05-17 20:48:20 +02:00
Ayaz
222967d749
Merge pull request #3081 from rtfeldman/issue-2845-dec-literal
Issue 2845 dec literal
2022-05-16 20:01:59 -04:00
Richard Feldman
3bbfb397d2
Merge pull request #3079 from rtfeldman/formatter-empty-record-patterns
Formatter empty record patterns
2022-05-16 19:12:45 -04:00
Sean Hagstrom
be798974c2
fix(formatter): ensure we normalize TypeHeaders in Aliases when comparing ASTs when running cli formatting 2022-05-16 22:25:33 +01:00
Sean Hagstrom
98a174c984
fix(formatter): ensure multi-line function type annotations for annotated bodies are indented properly 2022-05-16 22:25:01 +01:00
Sean Hagstrom
750ca52deb
improvement(formatter): format empty record patterns without spaces 2022-05-16 22:23:58 +01:00
Richard Feldman
e6abc8eb77
Merge pull request #3071 from rtfeldman/faster-comment-parsing
still faster comment parsing
2022-05-16 17:20:13 -04:00
Folkert
c6abb0e129
fix tab position 2022-05-16 22:30:29 +02:00
Folkert
256e7adaff
move colum state over 2022-05-16 21:39:57 +02:00
Richard Feldman
1aaa24a5a6
Fix cfg! mistake in merge commit 2022-05-16 12:34:11 -04:00
Richard Feldman
226fe40069
cargo fmt 2022-05-16 12:13:18 -04:00
Richard Feldman
f1eaae9db2
Merge remote-tracking branch 'origin/trunk' into test-bindgen 2022-05-16 12:03:00 -04:00
Richard Feldman
bf6548c859
Fix some clippy lints on tests 2022-05-16 11:51:57 -04:00
Anton-4
0f59f3097a
cargo fix --edition 2022-05-16 17:04:17 +02:00
Richard Feldman
ef70769761
Have VecSet::remove return a bool
This is what the standard Rust HashSet does.
2022-05-15 22:12:54 -04:00
Richard Feldman
de75f2e550
Fix --release warnings 2022-05-15 22:10:24 -04:00
Richard Feldman
9bc1e320dc
Fix --release warnings 2022-05-15 21:50:49 -04:00
Mfon Eti-mfon
c46e493c89
Fix typos 2022-05-15 22:40:43 +01:00
Folkert
1a49930d1d
simplifications 2022-05-15 22:00:47 +02:00
Folkert
225254d7e5
fix math 2022-05-15 21:49:10 +02:00
Folkert
f92a8e900d
binary operation bitmask 2022-05-15 21:34:43 +02:00
Folkert
65e842f64a
do a fast pass first to exit early if the spaces will not be parsed 2022-05-15 21:15:02 +02:00
Richard Feldman
f1e875103a
Merge pull request #3068 from rtfeldman/faster-comment-parsing
faster comment parsing
2022-05-15 14:27:31 -04:00
Ayaz
33226340bc
Merge pull request #3067 from rtfeldman/faster-gen-tests
use single-threaded mode for gen tests
2022-05-15 09:00:22 -04:00
Ayaz
016757be66
Merge pull request #3069 from rtfeldman/cycle-mark-opt-var
use opt var in cycle marks
2022-05-15 08:59:01 -04:00
Brian Carroll
6a91e66192
Delete env var NO_ZIG_INSTALLED since Zig is now installed on Netlify 2022-05-15 12:57:37 +01:00
Folkert
69e7d0a378
use opt var in cycle marks 2022-05-15 13:14:18 +02:00
Brian Carroll
aaea254e8f
Pass precompiled host bytes to gen_wasm in CLI 2022-05-15 11:11:08 +01:00
Folkert
c6b13984ed
direct indexing into the slice 2022-05-15 00:17:12 +02:00
Folkert
8f97c217a5
logic base 2022-05-15 00:06:33 +02:00
Folkert
dc4f8289ad
less cloning of the parse state 2022-05-14 23:54:15 +02:00
Folkert
2e3a8befc9
another inline 2022-05-14 23:51:06 +02:00
Drake
c4ab5a02eb
fix: cargo fmt 2022-05-14 15:46:57 -06:00
Folkert
9f2906a2f8
use while let 2022-05-14 23:46:52 +02:00
Folkert
d9977b73aa
inline function 2022-05-14 23:44:51 +02:00
Drake
43674efb32
fix: pass along parsed number string 2022-05-14 15:44:16 -06:00
Folkert
0cc6b63feb
use single-threaded mode for gen tests 2022-05-14 23:26:16 +02:00
Richard Feldman
d26f6f600f
Merge pull request #3065 from rtfeldman/bindgen-recursive-tag-unions
Bindgen unwrapped pointer recursive tag unions
2022-05-14 16:09:40 -04:00
Richard Feldman
83b2d2fc75
Merge pull request #3066 from rtfeldman/format-multiline-function-annotations 2022-05-14 11:40:35 -04:00
Sean Hagstrom
b91d6aa5a9 fix(formatter): ensure arguments and return value in multi-line function annotation are on separate lines
Added tests based on the examples in: Issue #2587
Removed outdated comment and debug_assert statement
Updated the tests for multi-line higher order function annotations
2022-05-14 14:23:56 +01:00
Folkert
c161140aec
Merge remote-tracking branch 'origin/trunk' into more-tyck 2022-05-14 14:48:54 +02:00
Folkert
7face320eb
move back to one loc_symbols vector 2022-05-14 14:44:37 +02:00
Richard Feldman
de14c9b979
Correctly unwrap cons list payloads in bindgen 2022-05-13 23:55:13 -04:00
Richard Feldman
c9f06a9172
Ad some docs to tag union layouts 2022-05-13 13:06:33 -04:00
Folkert de Vries
8db3a3c981
Merge pull request #3059 from rtfeldman/cleanup-let-constr
Clean up and explain recursive/non-recursive def constraining
2022-05-13 00:01:55 +02:00
Richard Feldman
e6efbdfe7c
Merge pull request #3055 from rtfeldman/bindgen-multi-tag-unions
Bindgen tag unions with payloads
2022-05-12 17:56:53 -04:00
Ayaz Hafiz
c9e8f6130b
Cleanup constrain_def_make_constraint 2022-05-11 19:28:39 -04:00
Ayaz Hafiz
1609a1a48b
Add some comments and tests showing why recursive defs are constrained this way 2022-05-11 19:16:10 -04:00
Ayaz Hafiz
697f5f7a86
Check in ignored tests 2022-05-11 18:12:37 -04:00
Ayaz Hafiz
3f0449292d
My bad 2022-05-11 14:57:03 -04:00
Ayaz Hafiz
75f7f6e681
cargo fmt 2022-05-11 14:57:03 -04:00
Ayaz Hafiz
c708c1ba07
Fix can and load tests 2022-05-11 14:57:03 -04:00
Ayaz Hafiz
710a10a29c
Check for invalid cycles after type solving recursive defs
Disallow cycles that pass through a non-function value. Since we
evaluate eagerly, having one such cycle means there is at least one path
in the program that (likely) has unbounded recursion. Of course we can't
be certain (halting problem), but it's very likely, and avoids stuff
like #1926. Also, mono (as it's done today) won't work if things in a
cycle aren't functions.

Closes #1926
2022-05-11 14:57:01 -04:00
Ayaz Hafiz
17d8545510
Remove symbols_from_pattern 2022-05-11 14:53:40 -04:00
Ayaz Hafiz
9777886376
Fill out pattern traversals, add symbol discovery 2022-05-11 14:53:39 -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
7420276116
Avoid an allocation 2022-05-11 11:20:17 -04:00
Richard Feldman
a380afd4dc
Merge remote-tracking branch 'origin/trunk' into bindgen-multi-tag-unions 2022-05-11 10:52:52 -04:00
Richard Feldman
8da0e219b9
Merge pull request #3049 from rtfeldman/clippy-for-tests
clippy --tests
2022-05-11 10:52:00 -04:00
Richard Feldman
b9c07aef27
Use internal_error over unreachable 2022-05-11 10:51:27 -04:00
Richard Feldman
5ff3bfbbf9
Expose the logic for choosing discriminant size 2022-05-11 10:47:56 -04:00
Richard Feldman
512e3c222e
cargo fmt 2022-05-11 10:47:55 -04:00
Richard Feldman
beda367d9f
don't say pi = 1.23 2022-05-11 10:47:55 -04:00
Richard Feldman
dbc6302681
Fix a bunch of errors from clippy --tests 2022-05-11 10:47:55 -04:00
Richard Feldman
a426a61e5d
Add some safety comments for clippy 2022-05-11 10:47:55 -04:00
Ayaz Hafiz
d0c6c06ca1
Remove KnownSizeIterator 2022-05-11 09:06:25 -04:00
Ayaz Hafiz
13441a0243
Revert "Known-size iterator"
This reverts commit f07c56a25d.
2022-05-11 08:59:12 -04:00
Ayaz Hafiz
49c61a6f4a
Fix ignored field 2022-05-11 08:56:04 -04:00
Ayaz Hafiz
eca069bb4a
Test static specializations 2022-05-11 08:53:41 -04:00
Ayaz Hafiz
afb1f826b1
Correct walking of even specialized symbols in mono 2022-05-11 08:53:16 -04:00
Ayaz Hafiz
da00c47102
Opportunistically resolve specializations during solving 2022-05-11 08:53:15 -04:00
Ayaz Hafiz
f07c56a25d
Known-size iterator 2022-05-11 08:52:49 -04:00
Ayaz Hafiz
619d9aa8b3
Decrease specialization ID size 2022-05-11 08:52:49 -04:00
Ayaz Hafiz
bdccda6cfb
Add some debug-assertions regarding what we know about specializations 2022-05-11 08:52:48 -04:00
Folkert de Vries
b2e045bf9a
Merge pull request #3042 from rtfeldman/specialization-under-let
Lift mono of let-bindings to separate function
2022-05-11 14:50:40 +02:00
Richard Feldman
49bf36ec09
Merge remote-tracking branch 'origin/trunk' into clippy-for-tests 2022-05-10 19:27:45 -04:00
Richard Feldman
11e2faa87a
Merge pull request #3050 from rtfeldman/bindgen-tag-payloads
Bindgen single-tag unions
2022-05-10 19:27:25 -04:00
Richard Feldman
5970e16a6b
cargo fmt 2022-05-10 19:26:48 -04:00
Richard Feldman
f386edc54a
don't say pi = 1.23 2022-05-10 15:25:46 -04:00
Richard Feldman
fd40fed937
Fix a bunch of errors from clippy --tests 2022-05-10 15:21:48 -04:00
Richard Feldman
a7ed288b56
Add some safety comments for clippy 2022-05-10 15:21:47 -04:00
Folkert de Vries
89c6f55288
Merge pull request #3048 from rtfeldman/i/2389
Type solving paper cuts
2022-05-10 20:45:45 +02:00
Richard Feldman
496b4b8857
Merge pull request #3044 from rtfeldman/bindgen-tags
Bindgen tag unions into Rust enums
2022-05-10 14:39:27 -04:00
Ayaz Hafiz
62ebb80f09
Handle recursion through Applys with errors
Closes #219
2022-05-10 12:58:14 -04:00
Folkert
a9bee7f564
only run min/max test on wasm/llvm; dev backend doesn't implement them 2022-05-10 18:33:00 +02:00
Ayaz Hafiz
4339d50480
Improve cycle error message
Closes #2513
2022-05-10 12:11:32 -04:00
Ayaz Hafiz
1fb6718c00
Improve error type context field name 2022-05-10 11:32:45 -04:00
Ayaz Hafiz
3ddb14184d
Move dead code removal 2022-05-10 11:29:10 -04:00
Ayaz Hafiz
a9507cf917
Consolidate variable pretty printing 2022-05-10 11:24:41 -04:00
Ayaz Hafiz
3de35f7aa2
Loosen recursion var rank restriction in presence of errors 2022-05-10 11:15:21 -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
Ayaz Hafiz
32814cbb37
Add test for resolved bug
Closes #2389
2022-05-10 09:29:28 -04:00
Ayaz Hafiz
029fbb372b
Fix gen test 2022-05-10 09:24:16 -04:00
Richard Feldman
8453b233bc
Fix test 2022-05-10 08:40:33 -04:00
Folkert
ff48bf0899
min/max abs tests 2022-05-10 13:23:57 +02:00
Richard Feldman
2db527888b
Drop unnecessary parens 2022-05-09 22:31:29 -04:00
Richard Feldman
64065a5019
Add UnionTags::iter_from_subs 2022-05-09 22:29:11 -04:00
Folkert
96bf75469a
formatting 2022-05-10 00:48:57 +02:00
Richard Feldman
1649680fbd
Share sorting code between bindgen and code gen 2022-05-09 18:42:38 -04:00
Richard Feldman
3ce0fc59d4
Remove a continue` 2022-05-09 18:42:37 -04:00
Richard Feldman
b174ea9ab0
Extract cmp_fields function 2022-05-09 18:42:37 -04:00
Richard Feldman
2f2230a9f3
Avoid an intermediate vector in some cases 2022-05-09 18:42:37 -04:00
Richard Feldman
e86ef8d1ca
Make a lifetime more explicit 2022-05-09 18:42:37 -04:00
Folkert
7461bbcd87
fix load tests 2022-05-09 23:07:54 +02:00
Folkert
5cd36a3c26
add tests for the new min/max constants 2022-05-09 22:56:54 +02:00
Folkert
f77e559c6f
replace maxFloat with maxF64 2022-05-09 22:56:30 +02:00
Folkert
8c4b574e48
remove type def for maxFloat; could only be used by expr2, and it isn't so this is safe 2022-05-09 22:56:09 +02:00
Folkert
cdc61f64ba
fix names of min/max float functions 2022-05-09 22:46:55 +02:00
Folkert
c5ee1effad
use chunks_exact; i spotted some weird things with the normal chunks 2022-05-09 22:46:39 +02:00
Ayaz Hafiz
1521711abd
Lift it all the way up 2022-05-09 16:45:39 -04:00
Ayaz Hafiz
7c1a6037d4
Lift another branch 2022-05-09 16:39:06 -04:00
Ayaz Hafiz
a59739bf20
More lifting 2022-05-09 16:36:13 -04:00
Ayaz Hafiz
bc5dc17ce9
Dead code 2022-05-09 16:29:20 -04:00
Ayaz Hafiz
6b9b64274b
Lift translation of lets 2022-05-09 16:23:00 -04:00
Brian Carroll
ca7d916065 Delete llvm feature from roc_build and roc_cli 2022-05-09 20:40:57 +01:00
Ayaz Hafiz
b92e3a07ac
Remove irrelevant errors 2022-05-09 09:48:30 -04:00
Ayaz Hafiz
b0734c3d80
Disallow abilities on toplevel of scope 2022-05-09 09:45:02 -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
3e7702df01
Merge pull request #2910 from rtfeldman/i/2880
Ability codegen for Encode/Decode
2022-05-08 19:10:45 -04:00
Richard Feldman
c7037db6d5
Merge pull request #3013 from rtfeldman/hostgen
Introduce bindgen CLI
2022-05-08 17:51:20 -04:00
Folkert de Vries
5d3b83f5a6
Merge pull request #2268 from rtfeldman/update_zig_09
Update to Zig 0.9 + LLVM 13
2022-05-08 23:29:45 +02:00
ayazhafiz
f2d3865315 Fix can AST walk 2022-05-08 15:17:59 -04:00
Ayaz Hafiz
4bfbe479c9 Useless comment 2022-05-08 15:08:20 -04:00
Ayaz Hafiz
798c28fccd Dryasdust was a popular word in 1860 2022-05-08 15:08:20 -04:00
Ayaz Hafiz
e31e89ac66 Mark and clear specializations 2022-05-08 15:08:20 -04:00
Ayaz Hafiz
da604e978e Use SpecializationId to mark specializations 2022-05-08 15:08:19 -04:00
Ayaz Hafiz
2cacda00eb Add some internal error assertions 2022-05-08 15:08:19 -04:00
Ayaz
d0bd08dbe0 Typo 2022-05-08 15:08:19 -04:00
Ayaz
4858979d6b Remove stale comment 2022-05-08 15:08:19 -04:00
Ayaz Hafiz
08beedb648 Improve codelink comment 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
154b17d9f0 Correct instantiation of delayed opaques
I didn't realize that delayed instantiation of aliases instantiates
their real var, not the whole alias type. So prior to this, we were
wrapping all opaques in a structural `Alias(..)`. Which is okay from a
typechecking perspective because Aliases are transparent, but is
wasteful.
2022-05-08 15:08:19 -04:00
Ayaz Hafiz
a47dc711f3 Remove a couple vec allocs 2022-05-08 15:08:19 -04:00
Ayaz Hafiz
5cc6727e9f Simplify introduced variables in ability member 2022-05-08 15:08:19 -04:00
Ayaz Hafiz
4a623a48dc Simpl decoder a bit 2022-05-08 15:08:19 -04:00