Ayaz Hafiz
6dc6386f77
DefTypes store slices into type indeces
2022-11-02 15:05:01 -05:00
Ayaz Hafiz
cbade622b6
exhaustive expects type index
2022-11-02 15:05:01 -05:00
Ayaz Hafiz
204ac2f8b4
Consolidate mono test behavior in debug and release modes
...
Makes sure that we turn on `debug-symbols` in mono tests, and that this
feature is fully respected in symbol generation, so that output in
release + debug builds are the same.
Closes #4435
2022-11-02 15:04:47 -05:00
Folkert de Vries
c4016547af
Merge pull request #4450 from roc-lang/simpl-exhaustiveness
...
Simplify constructor recovery
2022-11-02 19:32:40 +01:00
Ayaz
27a08041e0
Merge pull request #4454 from roc-lang/list-decision-tree-fixes
...
Minor cleanup and off-by-one fix for list decision trees
2022-11-02 13:21:30 -05:00
Anton-4
a8fcc8b107
Merge branch 'main' of github.com:roc-lang/roc into fix-nix-packaging-macos
2022-11-02 17:51:39 +01:00
Anton-4
85ce321c4d
Merge pull request #4347 from roc-lang/benchmarks-to-nix
...
moved earthly benchmarks to nix
2022-11-02 14:36:20 +01:00
Ayaz Hafiz
fc52e9582e
Fix an off-by-one modelling
2022-11-01 22:42:52 -05:00
Ayaz Hafiz
63abc4096d
Remove stale TODOs
2022-11-01 22:36:52 -05:00
Brian Hicks
db8955d6b5
examine PATH instead of calling which
2022-11-01 22:00:18 -05:00
Richard Feldman
ecbb8be61d
Merge pull request #4448 from roc-lang/list-patterns-decision-tree
...
Decision tree compilation of list pattern matches
2022-11-01 19:26:54 -07:00
Richard Feldman
2f7634a71c
Fix repl tests
2022-11-01 22:07:48 -04:00
Richard Feldman
e2451c7f22
Drop the gray lines from the repl
2022-11-01 22:05:47 -04:00
Richard Feldman
1499ec5def
Drop termline dependency
2022-11-01 21:42:08 -04:00
Ayaz Hafiz
666f0f8a52
Simplify constructor recovery
...
This fixes a bug in the list pattern matching code that caused crashes
in the presence of list guards, and simplifies the pattern splitting
algorithm to avoid complexity and allocations. Previously we would place
arguments-to-be-matched of constructors and lists at the front of
specialized rows for exhaustiveness checking, but at the back for
redundancy checking. Now, we always place them at the back - this avoids
needless allocation, and is not any worse, since we can still recover
the non-exhaustive witnesses by looking at the end of a list, instead of
the front.
2022-11-01 17:47:22 -05:00
Folkert de Vries
190a3c2a6f
Merge pull request #4124 from roc-lang/windows-tests
...
WIP windows: build tests, run some tests
2022-11-01 22:32:55 +01:00
Ayaz Hafiz
2d20c3b339
Allow too many args
2022-11-01 15:42:24 -05:00
Ayaz Hafiz
822aa71a0a
Compute list element stores lazily
2022-11-01 15:37:36 -05:00
Ayaz Hafiz
27b9dd8253
Simplify arity and branching calculation
2022-11-01 15:33:23 -05:00
Ayaz Hafiz
0706615d29
Decision tree compilation of suffixed list patterns
2022-11-01 15:22:31 -05:00
Ayaz Hafiz
b0edcc9af4
Add base gen tests for list matching compilation
2022-11-01 15:22:31 -05:00
Ayaz Hafiz
45f7cd5ad7
Make sure to update path of matched list
2022-11-01 15:22:31 -05:00
Ayaz Hafiz
ae71c7efe2
Decision tree compilation of list patterns
2022-11-01 15:22:31 -05:00
Ayaz
da1d937277
Merge pull request #4352 from roc-lang/i4349
...
Support monomorphic captures of body-polymorphic expressions in closures
2022-11-01 15:21:30 -05:00
Ayaz
0f4420e85e
Merge pull request #4447 from roc-lang/list-patterns-exhaustiveness
...
Exhaustiveness checking for list pattern matches
2022-11-01 15:19:42 -05:00
Folkert de Vries
b143183ba8
Merge pull request #4442 from roc-lang/better_errors
...
centralized commands, better errors, link build command refactoring
2022-11-01 21:10:37 +01:00
Richard Feldman
19ffa61f8f
Add a gray line after each repl output
2022-11-01 15:57:22 -04:00
Ayaz Hafiz
4b549ab24e
Apply clippy suggestions
2022-11-01 12:37:10 -05:00
Ayaz Hafiz
1d73560182
Add some more tests
2022-11-01 12:16:11 -05:00
Ayaz Hafiz
56bf50c331
Improve list pattern matching documentation
2022-11-01 12:07:00 -05:00
Ayaz Hafiz
7652ea2828
Add more documentation
2022-11-01 12:07:00 -05:00
Ayaz Hafiz
f696e8dd29
Clarify comment
2022-11-01 12:07:00 -05:00
Ayaz Hafiz
342f9f2e02
Add correct redundancy checking and tests for list patterns
2022-11-01 12:07:00 -05:00
Ayaz Hafiz
17920911e4
Implement list exhaustiveness checking
2022-11-01 12:07:00 -05:00
Ayaz Hafiz
62edf9547e
Better printing of list patterns
2022-11-01 12:07:00 -05:00
Ayaz Hafiz
99a4e21618
Improve exhaustiveness checking heuristics for list patterns
2022-11-01 12:07:00 -05:00
Ayaz Hafiz
a58d128d9e
Cover mode when unifying variable slices
2022-11-01 12:06:59 -05:00
Ayaz Hafiz
08d04e8c79
Update reporting tests
2022-11-01 12:06:59 -05:00
Ayaz Hafiz
92a3c48ce5
Implement sketching and pattern specialization for list patterns
2022-11-01 12:06:59 -05:00
Ayaz Hafiz
fbdf76e490
Report type errors in list pattern matches
2022-11-01 12:06:59 -05:00
Ayaz Hafiz
f9cb71fcf7
Report list element pattern type mismatches
2022-11-01 12:06:59 -05:00
Ayaz Hafiz
283f6e8e1e
Give localized region for expected list elem pattern
2022-11-01 12:06:59 -05:00
Anton-4
d7759bad16
Merge branch 'main' of github.com:roc-lang/roc into windows-tests
2022-11-01 17:27:51 +01:00
Ayaz
cb61f51814
Merge pull request #4441 from roc-lang/can-list-patterns
...
Canonicalization + Constraining of list patterns
2022-11-01 09:13:08 -05:00
Anton-4
05d48ec5d4
fixed macos retry zig
2022-11-01 09:32:36 +01:00
Brian Carroll
9ebf934ee7
Merge pull request #4444 from roc-lang/windows-cli-tests
...
Windows cli tests
2022-11-01 06:43:23 +00:00
Richard Feldman
fb799d1d24
clippy
2022-11-01 01:27:15 -04:00
Richard Feldman
211a5adcf6
fix a test
2022-11-01 01:26:22 -04:00
Richard Feldman
afa88bfd41
Don't shadow unnecessarily
2022-11-01 01:24:58 -04:00
Richard Feldman
560c984d30
Fix error filtering region math
2022-11-01 01:20:52 -04:00