Folkert
94efbd0e95
Merge remote-tracking branch 'origin/trunk' into builtins-list-take-last
2021-11-09 16:18:19 +01:00
satotake
772fc9c021
Implement List.takeLast
2021-11-09 12:26:17 +00:00
ayazhafiz
9e50580715
Walk the input list during List.find alias analysis
2021-11-08 22:00:03 -05:00
ayazhafiz
75b439cb31
Remove unnecessary clone
2021-11-08 21:03:15 -05:00
ayazhafiz
731f7a11a1
Remove unused variable
2021-11-08 21:03:15 -05: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
satotake
878400f95f
Implement List.takeFirst
2021-11-08 14:10:53 +00:00
Kevin Sjöberg
44938a9e35
Implement List.any
2021-11-07 20:44:10 +01:00
Brendan Hansknecht
73e2cbcb1e
Make versions numbers consistent and matching the lock files
2021-11-06 13:24:45 -07:00
Brendan Hansknecht
bddc08c977
Remove unused dependencies
2021-11-05 16:58:11 -07:00
Richard Feldman
18228ec39f
Merge pull request #1885 from rtfeldman/tags-invalid-alignment
...
fix invalid alignment in tags
2021-11-04 19:32:26 -04:00
Richard Feldman
ff48abdd06
Refactor NonRecursive to use flat_map and match
2021-11-03 19:44:35 -04:00
Folkert
aa9bf6bdff
fix alignment problem
2021-11-03 18:21:07 +01:00
Folkert
c5005d3dd1
Merge remote-tracking branch 'origin/trunk' into partialproc-by-reference
2021-11-03 15:32:39 +01:00
Folkert
353ad04229
simplify noncapturing closure IR gen
2021-11-03 15:18:11 +01:00
Folkert
bc71cf53d6
simplify capturing closure IR gen
2021-11-03 14:26:14 +01:00
Folkert
a15183a7d1
refactor
2021-11-03 14:09:04 +01:00
Folkert
74df66a472
make new PartialProcs struct
2021-11-03 13:59:00 +01:00
Anton-4
a3fc724df3
removed unused maplit
2021-11-03 10:50:25 +01:00
Folkert
487948e514
WIP
2021-11-02 21:08:12 +01:00
Folkert
0ad83fe990
Merge remote-tracking branch 'origin/trunk' into morphic-spec-sortwith
2021-11-01 23:11:52 +01:00
Folkert
89b850983d
all higher order lowlevels have morphic specs
2021-11-01 23:05:59 +01:00
Folkert
a36fddd27a
morphic for List.map, List.mapWithIndex, List.walk
2021-11-01 21:21:26 +01:00
Folkert
ca537a44b8
thread through update_mode
2021-11-01 20:12:39 +01:00
Folkert
830764221e
add specification for sortWith
2021-10-31 22:31:55 +01:00
Kevin Sjöberg
0f8047cbf0
Remove dead code
2021-10-31 21:08:41 +01:00
Kevin Sjöberg
f9ed060e49
Implement List.map4
2021-10-31 21:08:41 +01:00
Folkert
c7920b2a24
refactor
2021-10-31 17:38:07 +01:00
Folkert
a40c4f4fd5
use Entry
2021-10-31 13:47:02 +01:00
Folkert
d35686f3a8
hash less
2021-10-29 21:28:11 +02:00
Folkert
eda904e63e
don't register debug idents while doing work (it happens afterwards
2021-10-29 21:26:36 +02:00
Richard Feldman
2980e195ce
Merge pull request #1835 from rtfeldman/fix-ir-clones
...
remove clones in ir.rs
2021-10-28 22:15:17 -04:00
Dan Gieschen Knutson
02117ba512
Merge branch 'trunk' into str_trim
2021-10-27 18:01:29 -05:00
Folkert
2adaf2be7f
remove clones
2021-10-27 23:07:33 +02:00
Folkert
3559a0ed6b
move check
2021-10-27 22:25:37 +02:00
Folkert
456b6fd4d9
remove clone
2021-10-27 22:25:17 +02:00
Folkert
d561f2661d
speedups
2021-10-27 00:01:21 +02:00
Dan Knutson
e7523ad41d
add Roc wiring
2021-10-25 20:22:37 -05:00
Folkert
127b1495a7
add comment
2021-10-22 23:00:47 +02:00
Folkert
2e773e5f66
turn module_thunks into a slice
2021-10-22 22:59:00 +02:00
Folkert
6a6ea64323
abstract checking of is module thunk
2021-10-22 22:16:52 +02:00
Folkert
6400baf2c1
shrink Procs until the last moment
2021-10-22 21:42:53 +02:00
Folkert
eaaf3eb940
simplify monomorphization first steps
2021-10-22 18:12:46 +02:00
Folkert
0529d6dbc6
refactor insert_named
2021-10-22 17:22:15 +02:00
Folkert
9d343ab206
use vector instead of set
2021-10-22 16:57:14 +02:00
Folkert
5507743776
pass arguments as owned again, borrowed caused regressions
2021-10-21 21:09:48 +02:00
Folkert
031c7cc2e2
Merge remote-tracking branch 'origin/trunk' into mono-lowlevel
2021-10-18 11:11:04 +02:00
Folkert
dbf650f7ab
fixes
2021-10-17 21:14:30 +02:00
Folkert
a4f7ddb1f5
rename
2021-10-17 20:45:49 +02:00
Folkert
434ccbbf68
working parallel implementation
2021-10-17 20:42:29 +02:00