Luke Boswell
f51aef42bb
add support for slashes
2023-03-01 19:06:15 +11:00
Luke Boswell
c9ffedb483
add ? token
2023-03-01 18:38:16 +11:00
Luke Boswell
5f8629f64e
bug fix for highlighting
2023-03-01 18:00:30 +11:00
Brendan Hansknecht
a87aec77b4
Merge pull request #5068 from roc-lang/gen-dev-i128
...
gen-dev: num additions
2023-02-28 16:29:42 +00:00
Luke Boswell
1590b30b19
Add a lexing-based 'highlight' mode to the parser
...
basic syntax highlighting
added more syntax highlighting coverage
add example of a markdown table with styling
move FIXED_TOKEN logic into highlight
refactor highlight, add support for backpassing
escape html from source code
fix bug with <pre> tag ordering
refactor out html from roc_parse
remove test, put highlight functionality into separate file
fix typo
2023-02-28 17:03:49 +11:00
Anton-4
4157c0e72d
patch instruction reference link
...
Signed-off-by: Anton-4 <17049058+Anton-4@users.noreply.github.com>
2023-02-27 12:25:18 +01:00
Folkert
1f296a5907
fix test I broke
2023-02-26 22:32:19 +01:00
Folkert
44f08f9e47
implement sqrt and log in the dev backend
2023-02-26 21:41:25 +01:00
Folkert
6a40d75353
float comparisions
2023-02-26 18:14:11 +01:00
Folkert
f1fa014524
support 128-bit literals
2023-02-26 15:11:49 +01:00
Anton-4
4d91fe01ca
update mono tests
2023-02-24 14:35:05 +01:00
Folkert
9897367038
fix merge conflict in the dev backend
2023-02-22 13:13:40 +01:00
Folkert de Vries
34340de60c
Merge pull request #5020 from roc-lang/dev-unbox-u32
...
dev backend: reading and writing 32, 16 and 8-bit values
2023-02-21 17:33:21 +01:00
Folkert de Vries
bd6623dab4
Merge pull request #5055 from roc-lang/abilities-bug-generic
...
Lambda set compaction must preserve unique specializations of concrete types
2023-02-21 15:24:23 +01:00
Ayaz Hafiz
fbc75016e1
Check in mono goldens
2023-02-20 19:31:22 -06:00
Folkert de Vries
088bd5211f
Merge pull request #5054 from roc-lang/glue-generate-lambda-set-callers
...
Glue generate lambda set callers
2023-02-21 02:19:53 +01:00
Ayaz Hafiz
7a4fed932d
Add gen tests for concerete unspecialized set conservation
2023-02-20 18:59:48 -06:00
Ayaz Hafiz
d7a069675b
Lambda set compaction must preserve unique specializations of concrete types
...
There are times that multiple concrete types may appear in
unspecialized lambda sets that are being unified. The primary case is
during monomorphization, when unspecialized lambda sets join at the same
time that concrete types get instantiated. Since lambda set
specialization and compaction happens only after unifications are
complete, unifications that monomorphize can induce the above-described
situation.
In these cases,
- unspecialized lambda sets that are due to equivalent type variables
can be compacted, since they are in fact the same specialization.
- unspecialized lambda sets that are due to different type variables
cannot be compacted, even if their types unify, since they may point
to different specializations. For example, consider the unspecialized
lambda set `[[] + [A]:toEncoder:1 + [B]:toEncoder:1]` - this set wants
two encoders, one for `[A]` and one for `[B]`, which is materially
different from the set `[[] + [A, B]:toEncoder:1]`.
2023-02-20 18:50:07 -06:00
Ayaz Hafiz
f7aa7e734d
Pass interner through to debug proc layouts misisng in param map
2023-02-20 18:49:29 -06:00
Ayaz Hafiz
e5c3376e90
Debug ProcLayouts
2023-02-20 18:49:18 -06:00
Ayaz Hafiz
5a1898b285
Pretty-print opaque refs
2023-02-20 18:42:05 -06:00
Ayaz
2f251310c0
Merge pull request #5010 from roc-lang/tuple-record-unify
...
Unify IR generation for tuples and records
2023-02-20 18:40:52 -06:00
Folkert
958d44a21c
cleanup
2023-02-20 22:25:48 +01:00
Folkert
68524ef07e
generate callers based on layout traversal
2023-02-20 22:05:35 +01:00
Folkert de Vries
c6089ebb6a
Merge pull request #5041 from thehabbos007/eq
...
gen_dev x86: misc low-level bool comparison functions
2023-02-20 08:51:11 +01:00
Richard Feldman
c60360593f
Merge pull request #5050 from joshuawarner32/fuzzing
...
Fix several fmt+parse bugs found by fuzzing
2023-02-19 22:38:42 -05:00
Joshua Warner
b5f284cd78
Fix several fmt+parse bugs found by fuzzing
2023-02-19 12:37:33 -08:00
Folkert
5b52cfe79b
disable str_append_scalar; it segfaults for unclear reasons
2023-02-18 23:18:48 +01:00
Folkert
bece06ba10
work around universally quantified type variable
2023-02-18 18:12:32 +01:00
Folkert
90c45a197b
use extracted functions
2023-02-18 17:57:50 +01:00
Folkert
784ebde24b
helper functions
2023-02-18 17:34:41 +01:00
Folkert
edd10a079c
create hook for future glue proc codegen
2023-02-18 17:34:23 +01:00
Folkert
aac8c76c5f
fix mono tests
2023-02-18 16:43:51 +01:00
Folkert
808262892e
fix off-by-one error in loop condition
2023-02-18 16:42:47 +01:00
Folkert
b2a875c355
use debug_assert_eq
2023-02-18 16:42:47 +01:00
Folkert
03867fdc1f
str to num
2023-02-18 16:42:46 +01:00
Folkert
93fb1c73e6
str splits
2023-02-18 16:42:46 +01:00
Folkert
a3d5e7bee5
fully implement sign/zero extension
2023-02-18 16:42:46 +01:00
Folkert
4e38a4ce32
enable some utf8 conversion tests
2023-02-18 16:42:46 +01:00
Folkert
aa113f169c
string equality
2023-02-18 16:42:45 +01:00
Folkert
816828040d
tests for boxing/unboxing floats
2023-02-18 16:42:45 +01:00
Folkert
b968122bee
simplify systemv argument storing and loading
2023-02-18 16:42:45 +01:00
Folkert
89201676ef
make is_primitive look through LambdaSet
2023-02-18 16:42:44 +01:00
Folkert
4b31c77b37
paramter ownership is not important for codegen
2023-02-18 16:42:44 +01:00
Folkert
78000b3f19
enable more list tests
2023-02-18 16:42:44 +01:00
Folkert
9f5f80581e
add test that passes a struct < 16 bytes
2023-02-18 16:42:43 +01:00
Folkert
a66320b00c
count utf bytes
2023-02-18 16:42:43 +01:00
Folkert
e48a604862
add Str.appendScalar
2023-02-18 16:42:43 +01:00
Folkert
92539fe3b0
Revert "implment 8bit logical operators"
...
This reverts commit 87c49679e1ac5bcfb710b6d432a9f503db3ee501.
2023-02-18 16:42:42 +01:00
Folkert
f6fbfa002b
implment 8bit logical operators
2023-02-18 16:42:42 +01:00