ayazhafiz
17029cff7e
Link aliased lambdas to the partial procs of the original symbol
...
This ensures that we use the correct specialized variable at the call
site of a function. In #2725 what happened was that a generalized
function was aliased, causing it to undergo generalization again. Then,
we lost the variable used to specialize at the call site. Instead, just
link to the partial proc being aliased directly.
There is an added benefit here, which is that we can avoid the
possibly-quadratic replacement of symbols in the generated statement.
Closes #2725
2022-03-14 16:42:53 -05:00
Folkert
a66d23f93d
add substitute_variable
2022-03-14 22:23:26 +01:00
Folkert
18ca42d767
make Type::substitute use an explicit stack
2022-03-14 22:20:59 +01:00
ayazhafiz
2d01c21b5c
Codegen tags that are polymorphic because of rigids
...
Closes #2724
2022-03-14 15:25:25 -05:00
Folkert
9059e09dca
thread through Aliases
2022-03-14 21:20:35 +01:00
Folkert
0c5e4df215
remember which variables went where
2022-03-14 21:11:35 +01:00
Folkert
6838891d1b
refactor deep_copy_var_to
2022-03-14 21:08:40 +01:00
Folkert
f9bd46ecb8
fake implementation of type_to_var for DelayedAlias
2022-03-14 20:22:38 +01:00
Folkert
00f3eaf2a1
thread through DelayedAlias
2022-03-14 19:47:19 +01:00
Folkert
7127157962
refactor
2022-03-14 19:21:38 +01:00
Anton-4
d373085386
Merge pull request #2675 from rtfeldman/new-syntax-highlight
...
peg grammar, tokenizer, new syntax highlighting
2022-03-14 17:20:14 +01:00
Anton-4
0b5df36b25
cleaned up dbg!
2022-03-14 15:15:54 +01:00
Richard Feldman
422a88eced
Merge pull request #2722 from rtfeldman/various-bug-fixes
...
Various recently filed bug fixes
2022-03-13 22:18:39 -04:00
ayazhafiz
ee8b2a5283
Disable repl box tests on wasm for now
2022-03-13 20:16:04 -05:00
Richard Feldman
fbb9c941d4
Fix some FAQ entries
2022-03-13 21:06:42 -04:00
ayazhafiz
01b5109672
Fix reporting test
2022-03-13 19:47:01 -05:00
ayazhafiz
4c06b9d1a4
Redundant reference
2022-03-13 19:06:37 -05:00
hafiz
60b7fad74d
Merge pull request #2720 from rtfeldman/compact-constraints-store
...
Compact constraints store
2022-03-13 19:00:17 -05:00
ayazhafiz
e3d3f51951
Demonstrate Box alias imported correctly
...
Closes #2712
2022-03-13 18:48:56 -05:00
ayazhafiz
ec4bb9ad83
Support boxes in repl
...
Closes #2712
2022-03-13 18:44:38 -05:00
ayazhafiz
fe1cbc2261
Print i8s correctly in repl
...
Closes #2710
2022-03-13 18:44:38 -05:00
ayazhafiz
530fa9943a
Generate unsigned div and modulo correctly
...
Closes #2705
2022-03-13 18:44:38 -05:00
ayazhafiz
5670fe06cd
Deal with destructuring tag unions behind opaques correctly
...
Closes #2702
2022-03-13 18:44:38 -05:00
Folkert
872d32652a
remove clone, yay
2022-03-13 22:58:16 +01:00
Folkert
f7ba9918fa
use equal_types_with_storage in opaque type constraining
2022-03-13 22:54:13 +01:00
Folkert
80af910c4f
use equal_types_with_storage in tag constraining
2022-03-13 22:53:22 +01:00
Folkert
7df4465a6e
use equal_types_with_storage in Lambda constraining
2022-03-13 22:47:25 +01:00
Folkert
f23945ad94
use equal_types_with_storage in record constraining
2022-03-13 22:47:07 +01:00
Folkert
6baae55980
add equal_types_with_storage helper
2022-03-13 22:46:41 +01:00
Folkert
e8bf5fa378
prevent clone for all function signatures
2022-03-13 22:35:56 +01:00
Folkert de Vries
ceb69ace4d
Merge pull request #2703 from rtfeldman/type-checking-storage-subs
...
Transfer types with StorageSubs (instead of SolvedType)
2022-03-13 21:22:53 +01:00
Richard Feldman
13b684c1d1
Merge pull request #2718 from rtfeldman/split-types-values
...
Split types values
2022-03-13 16:14:54 -04:00
Richard Feldman
165fc4d1c3
Merge pull request #2719 from rtfeldman/faq-function-equality
...
Add FAQ entry about function equality
2022-03-13 16:02:06 -04:00
Richard Feldman
ef4756ac6d
Add FAQ entry about function equality
2022-03-13 14:45:23 -04:00
Folkert
9a40bcb427
add another comment
2022-03-13 18:32:56 +01:00
Folkert
15ac77567a
make rigid variable introducion more obvious
2022-03-13 18:27:42 +01:00
Folkert
97742b3238
clarify variable name
2022-03-13 17:59:44 +01:00
Folkert
d31ea3e71f
clarify import constraint
2022-03-13 17:59:33 +01:00
Folkert
b3f7b3a337
record referenced types
2022-03-13 17:52:31 +01:00
Folkert
a50a5fd021
record referenced types
2022-03-13 17:51:43 +01:00
Folkert
4ef6cba23a
Merge branch 'split-types-values' into type-checking-storage-subs
2022-03-13 17:43:24 +01:00
Richard Feldman
969d4c6dd7
Merge pull request #2717 from rtfeldman/maybe-faq
...
Give `Maybe` its own FAQ section
2022-03-13 12:41:47 -04:00
Folkert
66676e0ab9
factor out to separate function
2022-03-13 17:15:59 +01:00
Folkert
fe72008845
remove unused module checking from Solve step
2022-03-13 17:05:32 +01:00
Folkert
496c283491
replicate unused module check after canonicalization
2022-03-13 17:03:54 +01:00
Folkert
563ba6acbb
incorporate referenced types
2022-03-13 16:57:42 +01:00
Folkert
8bc31e82c3
try to keep type and value symbols separate
2022-03-13 16:50:32 +01:00
Folkert
d6c9e0c625
real unsafe now
2022-03-13 16:50:03 +01:00
Richard Feldman
f38b3a1859
Merge pull request #2714 from rtfeldman/abilities-parsing
...
Parse abilities
2022-03-13 10:36:06 -04:00
Richard Feldman
546db0cf14
Merge pull request #2708 from rtfeldman/docs-for-dict
...
Update docs for `Dict`
2022-03-13 10:29:59 -04:00