134 Commits

Author SHA1 Message Date
Guillem L. Jara ef3483215e chore(README.md): prettify 2026-06-05 15:35:45 +02:00
Guillem L. Jara 4bfce36756 chore(interpreter): code clean-up 2026-06-03 13:12:00 +02:00
Guillem L. Jara 94dc851d1e interpreter: add dest register to function calls 2026-06-02 19:12:09 +02:00
Guillem L. Jara 8a6296ca46 interpreter: high-water mark register sizing 2026-06-02 13:28:32 +02:00
Guillem L. Jara 98051c5de0 interpreter: refactor to accomodate immediates
Adds immediate values, moves array ops to the vm, adds missing ops for records, shortens registers, etc.
2026-06-02 12:20:32 +02:00
Guillem L. Jara 55b1fbd561 lexer, parser: add small integer atoms
Useful for immediate values in the interpreter; allows us to save on register loads and loads & stores in the constants table.
2026-06-02 12:20:32 +02:00
renovate[bot] c9fa413268 chore(deps): update rust crate uutests to 0.9 2026-05-31 10:23:37 +02:00
renovate[bot] f38f930f22 chore(deps): update rust crate ctor to v1.0.7 2026-05-29 07:46:15 +02:00
Guillem L. Jara b23d1e317c interpreter: print statements; calling conventions 2026-05-29 02:06:25 +02:00
yor1xd 1df4886ac5 parser: handle chained array indexing in parse_place and add tests 2026-05-29 00:57:01 +02:00
yor1xd ad6ba45c7c parser: add support for multidimensional arrays 2026-05-29 00:57:01 +02:00
Guillem L. Jara 19d1b46ca2 interpreter: unary placing operations 2026-05-27 18:16:46 +02:00
Guillem L. Jara ecc7dcced6 interpreter: binary placing operations; expand IR 2026-05-27 18:16:45 +02:00
Guillem L. Jara 4615b760d3 interpreter: Instruction fmt 2026-05-27 18:16:45 +02:00
renovate[bot] 82b665a2ad chore(deps): update rust crate memchr to v2.8.1 2026-05-27 08:41:34 +02:00
Guillem L. Jara 2ee3c722f5 interpreter: refactor IR to use native enums
That was huge lol.
2026-05-26 20:39:28 +02:00
Guillem L. Jara c5ae5cd710 interpreter: remove hinted instructions
This way, we can make room for bigger labels if necessary. We were not really using them, although this will surely force us to special-case `typeof()` and `isarray()` in the lowerer even more.
2026-05-26 17:35:01 +02:00
Guillem L. Jara 1ce27bf294 interpreter: small cleanup 2026-05-26 12:03:59 +02:00
Guillem L. Jara 2de68bc92f chore: add missing file headers 2026-05-26 09:33:14 +02:00
yor1xd 314a6cc46f interpreter: add for loop 2026-05-26 09:06:50 +02:00
Guillem L. Jara ca49529a46 interpreter: ordered boolean comparisons 2026-05-26 09:01:14 +02:00
Guillem L. Jara c0a9ab7e14 interpreter: remaining arithmetic operators 2026-05-26 08:23:55 +02:00
Guillem L. Jara 2006523ae7 interpreter: (in)equality comparisons 2026-05-26 08:01:48 +02:00
Guillem L. Jara 3b9ce0e689 interpreter: initial unary ops; tiny binops refactor 2026-05-26 07:25:20 +02:00
Guillem L. Jara 58f63c35a1 interpreter: concatenation; proper type display 2026-05-25 14:37:18 +02:00