Commit graph

2020 commits

Author SHA1 Message Date
Richard Feldman
0980d2d357
Add Problem::region 2022-11-01 00:23:54 -04:00
Richard Feldman
4ace05ea5d
Revert "Start attempting to offset parse error regions"
This is going to be a bigger project than I want to take on right now.

This reverts commit 3304f37b78.
2022-10-31 23:25:32 -04:00
Richard Feldman
3304f37b78
Start attempting to offset parse error regions 2022-10-31 23:25:24 -04:00
Richard Feldman
220c362671
Merge remote-tracking branch 'origin/main' into repl 2022-10-31 20:49:28 -04:00
Richard Feldman
5e00522a47
Merge pull request #4443 from joshuawarner32/move-min_indent-to-parse-pr
Refactor Parser trait to pass min_indent
2022-10-31 17:46:05 -07:00
Joshua Warner
07be8ec000
Refactor Parser trait to pass min_indent
This removes the need to explicitly pass thru min_indent when using the parser combinators.

My ultimate goal here is to evolve the current parser closer toward a purely combinator-based parser,
at which point we can more easily transition smoothly to a formal(ish) grammar, or expand the meanings of combinators
to include things like:
* Incremental (re)parsing
* Unified parsing and formatting code
* Better error recovery
* Using the main parser directly for syntax highlighting
2022-10-31 13:31:47 -07:00
Ayaz Hafiz
5e891a3501
Add comment on when heuristic can be removed 2022-10-31 09:48:25 -05:00
Ayaz Hafiz
04e8e26faf
Fix env var typo 2022-10-31 09:46:07 -05:00
Ayaz Hafiz
bb02104436
Fix typo 2022-10-31 09:44:22 -05:00
Ayaz Hafiz
b3956569a6
Add comment on inlining 2022-10-31 09:43:28 -05:00
Ayaz Hafiz
07f5d0c7fd
Clarify TODO 2022-10-31 09:39:29 -05:00
Ayaz Hafiz
a526fd92aa
inferred extension vars are material if they're not flex or empty 2022-10-31 09:38:22 -05:00
Ayaz Hafiz
4f367e2608
Clippers lose to the Thunder, I lose to Clippy 2022-10-31 09:38:22 -05:00
Ayaz Hafiz
9854f5f2ac
Print alias's underlying structures if OIOP vars are material 2022-10-31 09:38:22 -05:00
Ayaz Hafiz
e1b6e0334b
Generate OIOP vars correctly 2022-10-31 09:38:22 -05:00
Ayaz Hafiz
bedb26124d
Update load tests 2022-10-31 09:38:21 -05:00
Ayaz Hafiz
debe6332c5
Support OIOP for type aliases 2022-10-31 09:38:21 -05:00
Ayaz Hafiz
aa8a7b1ebc
Less aggressive inlining in debug builds
Being too aggressive about inlining in debug builds can result in huge
stack frames building up when inlined functions are contained in
non-tail-recursive, non-inlined function calls. This easily hits stack
overflows, so avoid it.
2022-10-31 09:38:21 -05:00
Ayaz Hafiz
91dd47c5e4
Store OIOP variables in a unique buffer 2022-10-31 09:38:21 -05:00
Ayaz Hafiz
cfe7c8e5ef
Warn on the presence of unnecessary wildcards in output positions 2022-10-31 09:38:20 -05:00
Ayaz Hafiz
d55dbbf0ae
Update load test to work around constraining bug 2022-10-31 09:37:41 -05:00
Ayaz Hafiz
85e58440de
Allow too many args 2022-10-31 09:37:41 -05:00
Ayaz Hafiz
8d5678151d
Implement open-in-output-position for non-alias type annotations 2022-10-31 09:37:41 -05:00
Ayaz Hafiz
ec4285c1dd
Work around constraining bug in gen test 2022-10-31 09:37:41 -05:00
Ayaz Hafiz
42058c3067
Add note on bug in constraining 2022-10-31 09:37:41 -05:00
Ayaz Hafiz
e7c7eb623e
Fail builds if builtins have type errors 2022-10-31 09:37:41 -05:00
Ayaz Hafiz
bb1f4cd5e8
Fix bug in closing heuristic 2022-10-31 09:37:40 -05:00
Ayaz Hafiz
7b9ce492c3
Better estimate polarity in exhaustiveness checking 2022-10-31 09:37:40 -05:00
Ayaz Hafiz
69114cc820
Apply a heuristic for opening/closing types before exhaustiveness checking 2022-10-31 09:37:40 -05:00
Ayaz Hafiz
f3623b1e47
Close extension types extended wiht uninhabited types after their extension 2022-10-31 09:37:40 -05:00
Ayaz Hafiz
4d48ea7c2f
Materialize extension variable polarity in error type reporting 2022-10-31 09:37:40 -05:00
Ayaz Hafiz
3c15ff4694
Correctly print wildcards as appropriate in error messages 2022-10-31 09:37:39 -05:00
Ayaz Hafiz
d77080529a
Introduce polarity for extension variable printing 2022-10-31 09:37:39 -05:00
Richard Feldman
fccc2ed497
Update panic message in repl 2022-10-30 13:35:49 -04:00
Richard Feldman
0c8f6a0a72
Fix annotated defs in repl 2022-10-30 13:34:38 -04:00
Richard Feldman
daa87093ca
Don't drop defs that would be shadowed 2022-10-30 12:42:20 -04:00
Richard Feldman
e38ae00c65
Expose macros for joining up AnnotatedBody nodes 2022-10-30 12:36:10 -04:00
Richard Feldman
99f4d99771
Revert "Attempt a refactor, but run into lifetime issues"
This reverts commit 4a9b44aaaf.
2022-10-30 07:22:32 -04:00
Richard Feldman
4a9b44aaaf
Attempt a refactor, but run into lifetime issues 2022-10-30 07:22:31 -04:00
Richard Feldman
e0e25a48bf
Add comment_str 2022-10-30 07:17:10 -04:00
Richard Feldman
e93d9b81d8
Report repl compile errors as bugs 2022-10-30 03:19:47 -04:00
Richard Feldman
9ed13eb97b
Don't panic when repl code crashes 2022-10-30 03:14:46 -04:00
Richard Feldman
0190787f7b
Revert "send panics to the repl more gracefully"
Now doesn't seem like the right time to do a change this invasive.

This reverts commit a36ddbf6cb.
2022-10-30 03:12:53 -04:00
Richard Feldman
a36ddbf6cb
WIP send panics to the repl more gracefully 2022-10-30 03:12:41 -04:00
Folkert de Vries
9f62e65892
Merge pull request #4406 from roc-lang/windows-effect-loop
Windows effects.roc
2022-10-29 00:29:35 +02:00
Richard Feldman
9f498add60
Reorganize some REPL modules 2022-10-27 18:47:27 -04:00
Richard Feldman
2e873d6a9a
Add linked_list_extra 2022-10-27 18:46:15 -04:00
Richard Feldman
67a8bbd6a2
Merge pull request #4414 from roc-lang/i4412
Parse and format list patterns
2022-10-26 19:49:12 -07:00
Richard Feldman
c894d522c3
Drop some commented-out lines
Signed-off-by: Richard Feldman <oss@rtfeldman.com>
2022-10-26 22:48:37 -04:00
Richard Feldman
93c6b65a4d
Merge pull request #4409 from roc-lang/parse-single-def
Extract parse_single_def
2022-10-26 19:44:35 -07:00