Commit graph

352 commits

Author SHA1 Message Date
Brian Carroll
29d355c4d6 Implement Expr::StructAtIndex for wasm dev backend 2021-11-14 19:06:04 +00:00
Brian Carroll
21a53ea044 Merge branch 'trunk' of github.com:rtfeldman/roc into wasm-control-stack 2021-11-14 13:22:02 +00:00
Brian Carroll
a2abf9c3d2 More accurate model of the Wasm VM's stack machine, with control flow blocks 2021-11-14 12:29:54 +00:00
Theo Felippe
ea5aac7b74 Merge branch 'trunk' into builtins-str-trim-right 2021-11-13 18:05:40 +00:00
Theo Felippe
8d7c252fce implemented Str.trimRight 2021-11-13 18:02:58 +00:00
Richard Feldman
1c6fab7043
Merge pull request #1916 from rtfeldman/tag-union-imitate-rust
Tag union imitate rust
2021-11-13 08:13:32 -08:00
Theo Felippe
10eab4b785 implemented Result.isErr 2021-11-13 08:29:40 +00:00
Folkert
e706c3eb0a Merge remote-tracking branch 'origin/trunk' into tag-union-imitate-rust 2021-11-13 01:06:31 +01:00
Brian Carroll
78a7e45b8f Fix a type error in Switch statement condition 2021-11-12 17:51:45 +00:00
Brian Carroll
7f633c107f Fix a bug in our model of the Wasm VM stack 2021-11-12 17:44:31 +00:00
Brian Carroll
86403b4a2f Enable some gen_compare tests for wasm 2021-11-12 17:44:31 +00:00
Brian Carroll
b77563867f Enable some gen_primitive tests for wasm 2021-11-12 17:44:31 +00:00
Folkert
6e935aa2c0 Merge remote-tracking branch 'origin/trunk' into tag-union-imitate-rust 2021-11-12 16:39:21 +01:00
Theo Felippe
48781d617a fixed formatting 2021-11-12 10:11:49 +00:00
Theo Felippe
cb9ec369fe working implementation 2021-11-12 10:08:39 +00:00
Folkert
c827256e47 Merge remote-tracking branch 'origin/trunk' into tag-union-imitate-rust 2021-11-11 18:58:49 +01:00
Theo Felippe
dfd14f8e49 added gen test 2021-11-11 08:23:40 +00:00
Folkert de Vries
a85ac128ee
Merge branch 'trunk' into roc-call-result-return-small-type 2021-11-10 22:36:40 +01:00
Folkert
5d7b4b7ad0 change roc call result; adding an extra field for the error message pointer
When the returned value was smaller than a pointer, there was no space for the error message pointer.
2021-11-10 22:14:54 +01:00
Brian Carroll
2f5d43cf82 Merge branch 'trunk' of github.com:rtfeldman/roc into wasm-more-lowlevels 2021-11-10 20:19:29 +00:00
Folkert
33e8f9a6b7 Merge remote-tracking branch 'origin/trunk' into cleanup-im-dependency 2021-11-10 17:19:54 +01:00
Folkert
144dbef434 Merge remote-tracking branch 'origin/trunk' into tag-union-imitate-rust 2021-11-10 17:19:30 +01:00
Brian Carroll
3d4aeedccb Merge branch 'trunk' of github.com:rtfeldman/roc into wasm-more-lowlevels 2021-11-10 15:46:42 +00:00
Brian Carroll
0ce0e337cd Enable more tests 2021-11-10 15:46:34 +00:00
Folkert de Vries
b3a663a741
Merge branch 'trunk' into builtins-list-sublist 2021-11-10 16:28:58 +01:00
Folkert
5632e3159d remove im dependency where not needed 2021-11-10 16:00:22 +01:00
Brian Carroll
7c95189e4a Get lots of Num lowlevel ops working 2021-11-10 14:21:32 +00:00
satotake
9f5d3f521b Implement List.sublist 2021-11-10 13:16:57 +00:00
Folkert de Vries
eb1b6d97bf
Merge branch 'trunk' into str_trim_left 2021-11-10 14:06:01 +01:00
Folkert de Vries
56c7318cd9
Merge branch 'trunk' into zig9-to-zig 2021-11-10 12:37:39 +01:00
Nathan Bleigh
2dd86b1f18 Updates zig9 to zig
Referenced in https://github.com/rtfeldman/roc/pull/1905
2021-11-09 21:18:18 -06:00
Michael Downey
22a293ceb5 Merge branch 'str_trim_left' of github.com:rtfeldman/roc into str_trim_left 2021-11-09 20:38:20 -05:00
Michael Downey
0ee750d4c9 adding feature gen-llvm to tests 2021-11-09 20:37:38 -05:00
Michael Downey
07cd3850d7
Merge branch 'trunk' into str_trim_left 2021-11-09 19:43:26 -05:00
Michael Downey
151c92bb48 adding tests and changing trimLeft to pass long unique test 2021-11-09 18:16:32 -05:00
Folkert
4e2b41f924 fix variable not updated in code disabled by feature flags 2021-11-09 23:04:31 +01:00
Folkert
656832b272 enable linking when running wasm tests 2021-11-09 22:31:11 +01:00
Brian Carroll
e2b95662a8 Fix wasm linking bugs 2021-11-09 21:22:12 +00:00
Folkert
a9ce02799c WIP 2021-11-09 21:37:56 +01:00
Folkert de Vries
5f5e86a67a
Merge branch 'trunk' into wasm-link-builtins 2021-11-09 17:12:58 +01:00
Brian Carroll
8392431bd8 Enable a few more tests for gen_wasm 2021-11-09 15:20:55 +00:00
Folkert
94efbd0e95 Merge remote-tracking branch 'origin/trunk' into builtins-list-take-last 2021-11-09 16:18:19 +01:00
Brian Carroll
d0f1698db2 Merge branch 'trunk' of github.com:rtfeldman/roc into wasm-link-builtins 2021-11-09 15:08:43 +00:00
satotake
dfc527ecff Merge branch 'trunk' into builtins-list-take-last 2021-11-09 12:34:58 +00:00
satotake
772fc9c021 Implement List.takeLast 2021-11-09 12:26:17 +00:00
Folkert
960733c605 Merge remote-tracking branch 'origin/trunk' into builtin/List.find 2021-11-09 13:07:47 +01:00
Folkert
af8ee4b7bb add cargo aliases for convenient test running 2021-11-09 12:27:28 +01:00
Brendan Hansknecht
1028e1593a Fix unused import 2021-11-08 19:49:33 -08:00
Brendan Hansknecht
360974398a Merge test_dev, test_wasm, and test_wasm_util into test_gen 2021-11-08 19:31:20 -08:00
ayazhafiz
f65b174ab5 Implement List.find
`List.find : List elem, (elem -> Bool) -> Result elem [ NotFound ]*`
behaves as follows:

```
>>> List.find [1, 2, 3] (\n -> n > 2)
Ok 2
>>> List.find [1, 2, 3] (\n -> n > 4)
Err NotFound
```

We implement this as builtin in two phases. First, we call out to a
pure-llvm-lowlevel `ListFindUnsafe` that returns a record indicating
whether a satisfying element was found, and the value of that element
(the value is all null bytes if the element wasn't found). Then, we lift
that record to a `Result` via a standard construction of the can AST.

Closes #1909
2021-11-08 21:03:14 -05:00