6ed7838a53
[Compiler-Rust]: Vec.get(0) -> Vec.first()
2024-01-02 17:22:36 +01:00
90d67867cc
Fix fasm error when enqueueing ints > 2^32
...
On x64 the only instruction supporting imm64 is mov rXX,
imm64 so there has to be a special case for those numbers
2023-12-23 22:01:06 +01:00
8478b10210
Simplifications curtesy of clippy
2023-12-22 22:19:52 +01:00
b1cb4a0a0e
Optimize swp and req with two-item queue
2023-07-28 07:04:39 +02:00
92f7ec405d
Add queue overflow check
2023-07-28 04:55:08 +02:00
09ac457b9d
Fix names clobbering fasm's "type" keyword
2023-07-28 03:10:57 +02:00
abcbe9d68b
Add divmod
2023-07-28 03:01:13 +02:00
95133360ee
Make imports work on all OSes
2023-02-06 16:03:48 +01:00
5aa365c681
Improve importing
2023-02-06 15:00:37 +01:00
131386632f
Fix tests
2023-01-23 06:08:26 +01:00
476aa8bfb2
Implement importing
2023-01-23 05:28:13 +01:00
4286fb4424
Start working on importing
2023-01-23 03:58:53 +01:00
4064309b26
Make oob check write to stderr instead of stdout
2023-01-11 19:45:38 +01:00
d7c6cada32
remove decrease intrinsic+update editor support
2023-01-11 03:02:10 +01:00
34f52ae864
Add array oob checks + improve test handling
2023-01-11 02:33:30 +01:00
0448b56adf
Improve diagnostics
2023-01-09 12:35:48 +01:00
83537737f5
Merge branch 'main' of https://gittea.dev/0x4261756D/kurz
2023-01-09 12:23:43 +01:00
df3e1b027f
Time interpretation
2023-01-09 12:23:01 +01:00
2ce863c899
Add asm compilation and running
2023-01-05 00:19:29 +01:00
ffdc54947b
Improve queue runaway problems
...
By changing the order of "pointer" increases it is possible to check and move back the queue if it is empty before function calls and req.
With the function call change in particular it is now possible to run conway_diehard.qbl a queue of length 1024 (down from ~16384)
2023-01-04 00:45:34 +01:00
3d2cd64c6d
Implement enough asm generation to compile rule110
2023-01-03 21:52:48 +01:00
870dcb105d
Readd queue runaway optimizations in comparisons
2023-01-03 20:55:05 +01:00
a754602bde
Readd queue runaway optimization in intToStr
2023-01-03 20:44:07 +01:00
84442e5eb9
Finish enough asm generation to compile tests/while.qbl
2023-01-03 20:39:08 +01:00
5bae80e9aa
Assembly generation, WIP
2023-01-03 17:07:57 +01:00
cdfa5b1310
Fix tests failing on Windows due to EOL shenanigans
2022-12-31 16:12:53 +01:00
41667ff4a3
Remove the "any" type
2022-12-31 16:09:55 +01:00
e3a1223ac9
WIP assembly gen
2022-12-23 14:49:09 +01:00
23c6ec8dad
Add more intrinsics
2022-12-22 10:29:25 +01:00
bf4a08e484
Make interpret fallible, fix applications at end of file, add more checks
2022-12-22 00:47:41 +01:00
dedb601a9b
Small updates to celebrate turing-completeness
2022-12-22 00:08:13 +01:00
e4a7bcccc0
Add arrays, making the language turing complete
...
See tests/rule110.qbl for turing completeness
2022-12-21 21:48:52 +01:00
2255aaff8b
Fix sending detection
2022-12-19 12:13:40 +01:00
f60441ef9d
Improved the test system
2022-12-18 04:05:50 +01:00
35f65101ad
Add testing functionality and add error reporting
2022-12-15 21:53:01 +01:00
0de0838284
Add new operations and intrinsics
2022-12-15 20:34:56 +01:00
d1883ff3ab
Introduce boolean types
2022-12-14 20:39:51 +01:00
c2800dfcc7
Make while swallow the input
2022-12-14 11:46:39 +01:00
48cb618d5a
Add interpreter
2022-12-14 09:34:41 +01:00
abfb3d2f3d
Make requeueing an operation instead of an intrinsic
2022-12-14 08:14:27 +01:00
d9e7f18049
Implemented function validation and type checking
2022-12-14 07:57:51 +01:00
ac6a835a64
Began validation
2022-12-14 04:12:03 +01:00
6a2bc25eaf
Implement function extraction and their removal from the token stream
2022-12-05 00:38:20 +01:00
9976ef9fe9
Initial commit, barebones tokenizer working
2022-11-29 02:04:01 +01:00