Commit graph

18743 commits

Author SHA1 Message Date
Folkert de Vries
b53fe24271
Merge pull request #3836 from roc-lang/turn-on-ability-tests
Turn on ability tests that work
2022-08-21 13:32:38 +02:00
Folkert de Vries
a726959461
Merge pull request #3837 from roc-lang/i3820
Don't suggest removing variable when it's bound in a branch pattern
2022-08-21 13:32:09 +02:00
Ayaz Hafiz
641169854e
Ignore unused branch patterns in tests 2022-08-20 10:05:22 -05:00
Brian Carroll
334bc7174f
Merge pull request #3742 from roc-lang/cleanup-mono-layout
Cleanup/refactoring of lambda set layout generation
2022-08-20 15:48:05 +01:00
Folkert de Vries
8937e2fecc
Merge pull request #3838 from roc-lang/i1745
Add polymorphic expression reproduction cases from #1745
2022-08-20 13:49:29 +02:00
Anton-4
109865ecbf
Merge pull request #3853 from JanCVanB/patch-2
Add installation & tutorial guide links to README
2022-08-20 12:23:25 +02:00
Jan Van Bruggen
b1935bde4e
Reword chatroom description to focus on Q&A
Signed-off-by: Jan Van Bruggen <JanCVanB@users.noreply.github.com>
2022-08-20 02:27:33 -06:00
Jan Van Bruggen
c20f8e8bc9
Add installation & tutorial guide links to README
See our prior discussion [here](293338300)

Signed-off-by: Jan Van Bruggen <JanCVanB@users.noreply.github.com>
2022-08-19 23:00:57 -06:00
Ayaz
b050c57665
Merge pull request #3839 from roc-lang/roclist-from-array
Allow creating RocList from sized array
2022-08-19 22:22:04 -05:00
Ayaz Hafiz
d1c21e3fcd
Add polymorphic expression reproduction cases from #1745
These work now that we have ways to compile polymorphic expressions.

Closes #1745
2022-08-19 22:21:50 -05:00
Ayaz Hafiz
b30c90b500
Don't suggest removing variable when it's bound in a branch pattern
Instead, suggest prefixing it with an underscore, or replacing with an
underscore.

Closes #3820
2022-08-19 22:21:44 -05:00
Ayaz Hafiz
81235b98d6
Turn on ability tests that work 2022-08-19 22:21:33 -05:00
Ayaz Hafiz
79a5766854
Make method private 2022-08-19 22:16:47 -05:00
Ayaz Hafiz
b7c799702f
wasm: store closure data passed to higher-order low-level in struct, not box 2022-08-19 22:16:47 -05:00
Brian Carroll
1078badd58
wasm: comment on why we don't need to modify symbol storage after clone 2022-08-19 22:16:47 -05:00
Anton-4
d24b47360f
re-enable all debian channels
Signed-off-by: Anton-4 <17049058+Anton-4@users.noreply.github.com>
2022-08-19 22:16:42 -05:00
Anton-4
cea53c1273
Only add debian testing as extra sources for gcc-10
Signed-off-by: Anton-4 <17049058+Anton-4@users.noreply.github.com>
2022-08-19 22:16:42 -05:00
Ayaz Hafiz
f08fc43210
Remove unneeded clone 2022-08-19 22:16:42 -05:00
Ayaz Hafiz
fb4282757a
gen-wasm: Do not repoint stack memory to locals upon copy
It is possible that other code paths will use the stack memory before a
copy to a local is done. For example, if the copy happens behind a branch,
the local variable may not be assigned the stack content.
2022-08-19 22:16:41 -05:00
Ayaz Hafiz
15ef517cf2
gen-wasm: box captured data before passing it to a higher-order lowlevel
Previously, when it existed, captured data would always be represented
as a struct, and hence implicitly boxed. That meant that passing
captured data would always pass a pointer. However, now, captured data
can live unwrapped. This poses a challenge for the higher-order
lowlevels, which always expect captures data to be passed as an opaque
pointer. As such, always box captured data.

It's possible to optimize this so that only unwrapped captures data
needs to be boxed; however, that is not attempted in this patch.
2022-08-19 22:16:41 -05:00
Ayaz Hafiz
cefbf3aa51
Unwrap lambda sets in cc type choosing 2022-08-19 22:16:41 -05:00
Ayaz Hafiz
0606086eb6
Compare values with runtime representation 2022-08-19 22:16:41 -05:00
Ayaz Hafiz
b18af7e1f3
Fix return type of closure 2022-08-19 22:16:41 -05:00
Ayaz Hafiz
d8a8dff70d
Treat unwrapped capture sets as unwrapped directly 2022-08-19 22:16:41 -05:00
Ayaz Hafiz
68bb03ec09
Update mono tests 2022-08-19 22:16:41 -05:00
Ayaz Hafiz
64fc60f55f
Make lambda set set private 2022-08-19 22:16:41 -05:00
Ayaz Hafiz
a93735473a
Describe how a enum lambda set should be switched in the representation 2022-08-19 22:16:40 -05:00
Ayaz Hafiz
f5e3105b37
Use extend_argument_list to add lambda set arguments 2022-08-19 22:16:40 -05:00
Ayaz Hafiz
c003b2d007
Simplify ClosureInfo and enum lambda set switching, which never captures 2022-08-19 22:16:40 -05:00
Ayaz Hafiz
d6572ef3b7
Match over call options in determining whether to extend lambda set arg 2022-08-19 22:16:40 -05:00
Ayaz Hafiz
d4a79780b3
Determine whether to extend lambda set arg to call args by checking call options 2022-08-19 22:16:40 -05:00
Ayaz Hafiz
62dde549e6
Determine whether lambda set is represented as an arg 2022-08-19 22:16:40 -05:00
Ayaz Hafiz
fc4979e2ce
Add ClosureCallOptions enum to describe how to switch calling lambda 2022-08-19 22:16:40 -05:00
Ayaz Hafiz
8d01e81aa7
Use tag union/recursive tag union layout function for lambda sets 2022-08-19 22:16:39 -05:00
Richard Feldman
34c3f266e0
Merge pull request #3850 from roc-lang/contributing-update
update CONTRIBUTING.md to use draft PR
2022-08-19 17:14:00 -04:00
Anton-4
f00e8fda82
update CONTRIBUTING.md tu se draft PR
Signed-off-by: Anton-4 <17049058+Anton-4@users.noreply.github.com>
2022-08-19 17:21:51 +02:00
Anton-4
6a1be6edb6
Merge pull request #3831 from raleng/fix-links-in-gen-dev-readme
Fix file links in gen_dev readme
2022-08-19 16:49:25 +02:00
Richard Feldman
605807468c
Merge pull request #3847 from roc-lang/remove_workflow
temporarily remove ci workflow
2022-08-19 08:54:13 -04:00
Anton-4
29179e92e6
temp move spellcheck to big-ci 2022-08-19 14:49:26 +02:00
Anton-4
bbd96d9afa
temporarily remove ci workflow 2022-08-19 10:39:09 +02:00
Richard Feldman
9093c30473
Merge pull request #3829 from roc-lang/update-roc-for-elm-programmers
Update roc-for-elm-programmers.md
2022-08-18 22:37:40 -04:00
Richard Feldman
5bbacaa2a1
Merge pull request #3823 from roc-lang/ruby-interop-version
Lower minimum Ruby version in ruby-interop example
2022-08-18 11:32:30 -04:00
Ayaz Hafiz
f70993c2a3
Add RocList from array 2022-08-17 17:58:03 -05:00
Ayaz Hafiz
b1e41a5995
Remove Clone restriction from RocList FromIterator
You don't need clone-able elements to create a Roc list from an owned
iterator.
2022-08-17 17:44:06 -05:00
raleng
4371905738
Fix file links in gen_dev readme 2022-08-17 12:40:28 +02:00
Richard Feldman
94750c7cfa
Lower minimum Ruby version in ruby-interop example
Signed-off-by: Richard Feldman <oss@rtfeldman.com>
2022-08-16 14:02:31 -04:00
Richard Feldman
fc7705f7be
Update roc-for-elm-programmers.md 2022-08-16 10:17:32 -04:00
Richard Feldman
9ecc304d25
Revert "Add a section about constants in patterns"
This reverts commit ed27885391b4ed686dc615872fbff77f8122a358.
2022-08-15 22:25:12 -04:00
Richard Feldman
77d9cef014
Add a section about constants in patterns
(This isn't actually implemented currently.)
2022-08-15 22:25:11 -04:00
Richard Feldman
0ba5b3cfc6
Merge pull request #3711 from roc-lang/record-decoding
Record decoding and their derivers
2022-08-15 22:06:34 -04:00