Folkert
db3b40a07b
Dec floor/ceiling/round
2024-01-29 13:39:38 +01:00
Folkert
a7212ceb7f
add fract/trunc functions to zig RocDec
2024-01-29 12:44:34 +01:00
Folkert de Vries
4a593a5b77
Merge pull request #6442 from roc-lang/dev-backend-glue-primitives
...
Dev backend glue primitives
2024-01-29 00:08:51 +01:00
Folkert
d4cac5cdd9
dict: use Num.mulWrap to prevent branches
2024-01-28 16:53:23 +01:00
Folkert
1e744dca7c
missing functions for dev backend for glue
2024-01-27 14:51:09 +01:00
Brian Teague
4499f8c6f4
isApproxEq function
2024-01-23 21:06:35 -05:00
Richard Feldman
a8b271c8d5
Copy tweaks to Str docs
2024-01-23 00:05:06 -05:00
Brendan Hansknecht
62c4c2dcb5
Merge branch 'main' into main
2024-01-21 12:17:44 -08:00
Richard Feldman
2970fc4384
Merge remote-tracking branch 'origin/main' into str-unicode
2024-01-21 12:30:16 -05:00
Folkert
f1ffc36efe
add List.clone
2024-01-20 20:29:07 +01:00
Richard Feldman
e7c93bad75
Restore » in docs and allow it in highlighter
2024-01-18 22:23:06 -05:00
Richard Feldman
09c0453fc9
Fix HTML build
2024-01-18 21:51:50 -05:00
Luke Boswell
85fdef8a9b
fix doc comments in Str
2024-01-19 09:56:53 +11:00
Richard Feldman
894860118b
roc format
on builtins
2024-01-18 06:34:51 -05:00
Richard Feldman
88ea8ffb67
fix typo
2024-01-17 21:51:39 -05:00
Richard Feldman
b48fa0698a
Remove scalars and graphemes from Str
2024-01-17 21:30:34 -05:00
Richard Feldman
65738acb26
Update Str docs
2024-01-17 18:42:32 -05:00
Fabian Schmalzried
946f00e91b
Remove duplicate code in bitcode
...
Signed-off-by: Fabian Schmalzried <fabhof@posteo.de>
2024-01-16 16:19:39 +01:00
Anton-4
79ed84fff3
Merge pull request #6355 from B-Teague/merge-gitignore
...
Consolidate gitignore
2024-01-12 13:29:32 +01:00
Brian Teague
60c639b60e
Consolidate gitignore
...
Keep certain files with no file extension
Keep specific files with no file extension
Delete all gitignore files
2024-01-10 22:16:04 -05:00
Luke Boswell
6b77aa93d5
force windows_setjmp & windows_longjmp
2024-01-08 12:31:09 +11:00
Folkert
b9b19d6054
fix for bugged setjmp/longjmp on windows/llvm
2024-01-07 23:04:11 +01:00
Bryce Miller
a710dd18ac
Merge branch 'main' into list-walk-with-index-until
2023-12-18 17:25:06 +01:00
Sahil Mahapatra
b2ceeb47d9
removed all the mentions of Num.format
2023-12-13 18:51:01 +05:30
Bryce Miller
2db4cae9d1
Merge branch 'main' into list-walk-with-index-until
2023-12-12 07:54:42 -05:00
Bryce Miller
89febf52bc
Merge branch 'main' into list-walk-with-index-until
2023-12-11 23:13:21 -05:00
Bryce Miller
59eb28ef58
Add builtin List.walkWithIndexUntil
2023-12-11 23:04:40 -05:00
Brendan Hansknecht
0e842fd844
update formatting, uitest, and mono_test
2023-12-11 18:22:53 -08:00
Brendan Hansknecht
65ce79c1c5
correct Dict.update to use proper index
2023-12-11 15:35:19 -08:00
Brendan Hansknecht
3120dee509
Merge pull request #6238 from roc-lang/dict-follow-up
...
Dict follow up and addition of releaseExcessCapacity
2023-12-11 02:15:44 -08:00
Brendan Hansknecht
f262102299
cleanup list and str builtin naming from refcount to allocation
2023-12-10 19:52:28 -08:00
Brendan Hansknecht
b39d604745
Dict follow up and addition of releaseExcessCapacity
2023-12-10 00:06:58 -08:00
Brendan Hansknecht
ba28ba7ca3
Remove hashflooding comment
...
I think for now it is not worth considering adding hashflooding mitigation to the Roc Dict.
1. Wyhash is a secure enough has to pass SMHasher.
2. Languages like Go use wyhash in production and have not seen hashflooding issues.
3. We do have a random seed that Dicts use that changes per application linking. (Could monomorphize on Dict type for more randomness)
4. Any sort of fallback checks will lead to worse performance in the normal case.
5. A reasonable http server or app can limit the size of JSON or number of HTTP headers to accept.
2023-12-09 18:11:23 -08:00
Brendan Hansknecht
cd42ed629a
tell windows that we use floats?
2023-12-09 18:11:22 -08:00
Brendan Hansknecht
3dc1389cdd
wasm is not friends with compiler-rt
2023-12-09 18:11:22 -08:00
Brendan Hansknecht
8aa68ccf8e
libc is a lie, tell bitcode that roc targets a world where libc might not exist
2023-12-09 18:11:22 -08:00
Brendan Hansknecht
797ba64003
remove all compiler-rt and libc code ports from zig bitcode
2023-12-09 18:11:22 -08:00
Brendan Hansknecht
be06599bb6
bundle compiler-rt through zig
2023-12-09 18:11:22 -08:00
Brendan Hansknecht
f738d5a2bf
remove unnecessary call to math.floor
in bitcode
2023-12-09 18:11:22 -08:00
Brendan Hansknecht
51ec4311b5
Swap Dict implementation to ankerl dense unordered
...
ankerl::dense_unordered is a very fast hash map that is built to be an index map.
This enables extra optimizations compared to just wrapping a regular hash map.
As such, I think this map is very well suited for our index map impl in Roc.
I also think this dictionary implementation is simpler overall.
On top of that, this removes the need for SIMD instructions for peak performance.
Benchmarks of the C++ version and other C++ hash maps are here: https://martin.ankerl.com/2022/08/27/hashmap-bench-01/
Though this has clear bias of being written by the author of ankerl::dense_unordered,
the results all look correct and the benchmarks thorough.
2023-12-09 18:11:22 -08:00
Anton-4
c4c1e66d1c
Merge pull request #6209 from roc-lang/remove-max-nat-mention
...
Num.maxNat does not exist
2023-12-06 20:44:49 +01:00
Richard Feldman
6f0857d7da
Merge pull request #6202 from roc-lang/substring-slices
...
Create seamless slices when getting a substring
2023-12-06 14:31:01 -05:00
Brendan Hansknecht
ca71409a76
add comment on slice construction
2023-12-06 11:26:52 -08:00
Anton-4
e16f2bbc01
Num.maxNat does not exist
...
Signed-off-by: Anton-4 <17049058+Anton-4@users.noreply.github.com>
2023-12-06 18:19:27 +01:00
Brendan Hansknecht
81eff6a23f
Merge pull request #6176 from roc-lang/set-perf
...
Improve perf of Dict and Set
2023-12-06 02:02:01 -08:00
Brendan Hansknecht
087ca115c9
create seamless slices when getting a substring
2023-12-05 22:46:43 -08:00
Brendan Hansknecht
86eae30247
Merge pull request #6182 from CrepeGoat/patch-1
...
Update Num.roc - fix docstring typos
2023-12-05 14:28:39 -08:00
Brendan Hansknecht
a2cc17e8e9
write keepShared in a way that doesn't break dev-wasm
2023-12-05 14:12:10 -08:00
Brendan Hansknecht
87b31a581e
roc format
2023-12-05 12:37:12 -08:00
Brendan Hansknecht
3f50f78eba
update tests and Dict.keepShared semantics
2023-12-05 12:37:12 -08:00