Commit Graph

24 Commits

Author SHA1 Message Date
CHatingPython 767970c69b feat(furc): introduce while loop statement
Refs: #2
2026-06-12 23:10:26 +02:00
CHatingPython be386cf230 feat(furc/ssa): implement renaming
Refs: #2
2026-06-12 22:07:26 +02:00
CHatingPython a14252bd1d refactor(furlang/ir): improve instruction interface
Refs: #2
2026-06-12 14:45:26 +02:00
CHatingPython 6b92e19b23 refactor(furlang/ir): add version to register_operand
Refs: #2
2026-06-12 14:07:09 +02:00
CHatingPython 865691df26 feat(furc, ssa): implement phi instruction placement
Refs: #2
2026-06-12 13:45:35 +02:00
CHatingPython 3f6fcc56ff feat(furlang): introduce phi instruction
Refs: #2
2026-06-12 09:43:42 +02:00
CHatingPython ab6b65a70e refactor(result): add print operator to result
Fixes #6
2026-06-03 16:06:59 +02:00
CHatingPython cb7a348540 refactor(lexer): change token_handle to token result
Refs: #1
2026-06-02 16:49:40 +02:00
CHatingPython 3491f9aebb refactor(result): add value comparison operators 2026-06-02 16:03:38 +02:00
CHatingPython 66a46d8b88 docs: document IR 2026-06-02 13:57:23 +02:00
CHatingPython fd98474a86 docs: document result 2026-06-02 13:16:55 +02:00
CHatingPython 7ac994511c docs: document arena allocator 2026-06-02 12:56:58 +02:00
CHatingPython 270a3394e4 fix(result, furlang): fix value construction for error result constructor 2026-06-01 23:05:21 +02:00
CHatingPython 6775ddf7d4 fix(furlang): use std::free() instead of delete in arena 2026-06-01 21:14:56 +02:00
CHatingPython 62619cd0bc refactor(IR)!: change IR block structure
It now requires an exit instruction.
2026-06-01 18:27:36 +02:00
CHatingPython 9b1a7d5a0b Implement var read and assign IR
Signed-off-by: CHatingPython <chatingpython@gmail.com>
2026-05-31 19:16:53 +02:00
CHatingPython 646d185d40 Implement basic IR generator
Signed-off-by: CHatingPython <chatingpython@gmail.com>
2026-05-31 19:16:53 +02:00
CHatingPython 6eb689bfb9 Fix and rename branch_nz to branch_cond in furlang IR
Signed-off-by: CHatingPython <chatingpython@gmail.com>
2026-05-31 19:16:52 +02:00
CHatingPython dfcbc4f23b Add IR instruction and block to furlang
Signed-off-by: CHatingPython <chatingpython@gmail.com>
2026-05-31 19:16:52 +02:00
CHatingPython 28656fdf90 Add IR operand to furlang
Signed-off-by: CHatingPython <chatingpython@gmail.com>
2026-05-31 19:16:52 +02:00
CHatingPython 82c9037a6a Add result to furlang
Signed-off-by: CHatingPython <chatingpython@gmail.com>
2026-05-31 19:16:52 +02:00
CHatingPython 156aa224ee Use arena in parser
Signed-off-by: CHatingPython <chatingpython@gmail.com>
2026-05-31 19:16:49 +02:00
CHatingPython d2cfbb6763 Add arena to furlang
Signed-off-by: CHatingPython <chatingpython@gmail.com>
2026-05-31 19:16:49 +02:00
CHatingPython 28f6deaba5 Basic lexer 2026-05-24 14:57:57 +02:00