Ayaz
562a2748cb
Merge branch 'main' into i4732
...
Signed-off-by: Ayaz <20735482+ayazhafiz@users.noreply.github.com>
2022-12-28 11:56:08 -06:00
Ayaz
fe2bab56f9
Merge pull request #4819 from roc-lang/i4717
...
Compile anonymous closures with multiple specializations, and various fixes to lambda set compilation
2022-12-28 11:45:04 -06:00
Folkert de Vries
f4894183d7
Merge pull request #4823 from roc-lang/fix-check-union
...
Fix checking of recursive layouts in the ir-checker
2022-12-28 16:20:01 +01:00
Ayaz
b400851586
Merge branch 'main' into i4717
...
Signed-off-by: Ayaz <20735482+ayazhafiz@users.noreply.github.com>
2022-12-27 18:58:16 -06:00
Joshua Warner
a15e6c5c37
Remove accidentally committed parser generator
2022-12-27 16:55:54 -08:00
Folkert de Vries
1abc6d68a2
Merge pull request #4825 from roc-lang/i4773
...
Handle error types in record/tag extensions when printing errors
2022-12-27 23:13:59 +01:00
Folkert de Vries
ecaf837098
Merge pull request #4822 from roc-lang/i4557
...
Appropriately substitute symbols in switch conditions
2022-12-27 23:13:07 +01:00
Ayaz Hafiz
5b9e3aa856
Handle error types in record/tag extensions when printing errors
2022-12-27 13:20:28 -06:00
Anton-4
dea114fcc4
Merge pull request #4817 from roc-lang/broken-install-link
...
remove broken install link
2022-12-27 20:01:14 +01:00
Ayaz Hafiz
76d4bea0f3
Require no_check to have an associated annotation
2022-12-27 12:50:53 -06:00
Ayaz Hafiz
09c38798e5
Start checking mono tests that now check correctly
2022-12-27 12:49:30 -06:00
Ayaz Hafiz
13bb657b97
Follow recursive pointers in mono IR checker to not appear on top-level
2022-12-27 12:47:53 -06:00
Ayaz Hafiz
ce61386d0a
Expose set and representation to crate
2022-12-27 12:47:04 -06:00
Ayaz Hafiz
23fc7f1413
Appropriately substitute symbols in switch conditions
...
Closes #4557
2022-12-27 12:29:23 -06:00
Ayaz
4dbe90db93
Merge pull request #4807 from joshuawarner32/fix-unify
...
Fix bug in unification of tag args in polymorphic contexts
2022-12-27 11:24:24 -06:00
Anton-4
fe4b8073af
link install to github getting-started
...
Signed-off-by: Anton-4 <17049058+Anton-4@users.noreply.github.com>
2022-12-27 18:23:17 +01:00
Ayaz Hafiz
a818b810f2
Better name for #4717 repro case
2022-12-27 11:05:12 -06:00
Ayaz Hafiz
d23d0b9b88
Remove unneeded branch when extending lambda dispatch with closure args
...
If we pass ClosureInfo that indicates that a lambda captures, then when
we extend the lambda's argument list with the lambda set it appears it,
the extension must necessarily be material.
2022-12-27 10:56:23 -06:00
Ayaz Hafiz
25117bf50e
More do not ignore the specialized layout
2022-12-27 10:52:47 -06:00
Ayaz Hafiz
6ed1ad9fd5
Do not ignore layout, base it off specialization
2022-12-27 10:48:24 -06:00
Ayaz Hafiz
e7aaeb931a
Add a comment regarding behavior of extend_argument_list_for_named
2022-12-27 10:42:35 -06:00
Ayaz Hafiz
830843da82
Remove unused extend_argument_list
2022-12-27 10:40:09 -06:00
Ayaz Hafiz
468f76a424
Remove unused layout cache parameters
2022-12-27 10:39:44 -06:00
Ayaz Hafiz
3e906855e3
Extend called lambda argument lists only with explicit lambda names
2022-12-27 10:37:25 -06:00
Anton-4
3d5216a589
remove broken install link
...
Signed-off-by: Anton-4 <17049058+Anton-4@users.noreply.github.com>
2022-12-27 17:37:17 +01:00
Ayaz Hafiz
679557e44e
ProcLayout::new is crate-public
2022-12-27 10:33:38 -06:00
Ayaz Hafiz
8431b27282
Remove redundant parameter in from_raw_named
...
The captures niche is already accounted for by the lambda name, so we
don't need that as an extra param.
2022-12-27 10:30:07 -06:00
Ayaz Hafiz
e89f5ad6e5
Mark a couple functions as crate-exposed
2022-12-27 10:28:00 -06:00
Ayaz Hafiz
0b57d2f74f
Remove unneeded import
2022-12-27 10:27:19 -06:00
Ayaz Hafiz
198417c183
Remove ProcLayout::from_raw
2022-12-27 10:25:43 -06:00
Ayaz Hafiz
7a6e68861c
Account for non-capturing functions in larger lambda sets passed to HOLLs
...
Previously, if the lambda set passed to a HOLL contained any function
that captured, we would assume that the specialization of the HOLL we
should make for each function in the lambda set that we dispatch to
should capture.
This is not right. Instead, we should specialize for each lambda in the
set passed to the HOLL. The present patch enforces that, making sure
that for each lambda in the set, we compute the exact proc layout needed
to call the lambda, based on the captures of the specific lambda in the
set, rather than looking at the set entirely.
2022-12-27 10:22:18 -06:00
Ayaz
f7bdc59ac0
Merge pull request #4815 from roc-lang/improve_getting_started
...
helloWolrd use url platform, improve getting started
2022-12-27 10:02:44 -06:00
Ayaz Hafiz
bb0493918e
Update more usages of from_raw
2022-12-27 09:54:18 -06:00
Ayaz Hafiz
38920b98fa
Debug missing lambda names
2022-12-27 09:54:12 -06:00
Ayaz Hafiz
ccd68b70e1
Do not associate top-level accessor thunks as closures
...
Leftover follow-up to #4645
2022-12-27 09:49:51 -06:00
Ayaz Hafiz
fe58a0591b
Migrate some more uses of from_raw
2022-12-27 09:27:29 -06:00
Ayaz Hafiz
54bb258aac
Remove stale uniqueness inference comment
2022-12-27 09:26:08 -06:00
Ayaz Hafiz
1e847efbfe
Correctly choose specialized shapes for anonymous closures
2022-12-27 09:18:41 -06:00
Ayaz Hafiz
593344f5c5
Determine the proc layout based on captures of an individual lambda
...
Previously, we determined whether a closure argument should be added to
the proc layout of a compiled function by checking whether the lambda
set was material at all. But, the extension for a single function should
be added if and only if the function itself captures.
2022-12-27 09:15:21 -06:00
Anton-4
3904b1effe
undo temp omission tutorial page
...
Signed-off-by: Anton-4 <17049058+Anton-4@users.noreply.github.com>
2022-12-27 15:21:12 +01:00
Anton-4
33af6264d6
add helloWorldNoURL
2022-12-27 15:03:31 +01:00
Ayaz
d7a3e5e1fb
Merge pull request #4814 from roc-lang/fix_tutorial_deployment
...
build tutorial with roc nightly
2022-12-27 07:57:14 -06:00
Anton-4
7387c57a10
temp disable link checking tutorial
...
Signed-off-by: Anton-4 <17049058+Anton-4@users.noreply.github.com>
2022-12-27 13:59:04 +01:00
Anton-4
edd97f5405
helloWolrd url platform, improve getting started
2022-12-27 13:46:48 +01:00
Anton-4
61d8ef8539
make nightly tests use today's release
2022-12-27 13:28:22 +01:00
Anton-4
88c7bf2e33
build tutorial with roc nightly
2022-12-27 13:24:50 +01:00
Anton-4
c3b0295a92
Merge pull request #4813 from joshuawarner32/test_syntax
...
Move syntax tests to a dedicated crate
2022-12-27 13:15:01 +01:00
Anton-4
f0ea60df51
use latest cli platform, added wasm repl build test
2022-12-27 11:31:15 +01:00
Joshua Warner
bfeddc470a
Move syntax tests to a dedicated crate
...
* test_fmt moves out of fmt crate
* test_parse _mostly_ moves out of parse crate and into `test_snapshots.rs` (some simple tests remain)
* now there's only two fuzz targets, fuzz_expr and fuzz_module, that cover both parsing and formatting
* added a system to auto-add new snapshot entries for new test files
* took some commented-out tests in `test_parse` and converted them to snapshot tests
* moved test_fmt's verification of formatting consistency into test_snapshots
* fixed a huge derp on my part where the fmt fuzzer in #4758 was completely useless (broken by refactoring just prior to submitting the PR)
* fixed a formatting bug found by fuzzing (bound_variable.expr.roc) - that I missed earlier due to ^^^ that derp
* no longer have roc_test_utils as a dependency in fmt - which was causing problems for the wasm build
2022-12-26 22:50:24 -08:00
Richard Feldman
5227b5ff43
c l i p p y
2022-12-27 00:31:54 -05:00