1
0
mirror of https://github.com/MontFerret/ferret.git synced 2025-08-15 20:02:56 +02:00

9 Commits

Author SHA1 Message Date
Tim Voronov
c24d802671 Refactor error handling: replace Location with Span, standardize error span processing across the compiler, remove unused location-related code, and update snippets and tests accordingly. 2025-07-30 14:20:24 -04:00
Tim Voronov
948b6b698e Add tests for function calls and variable declarations: implement unit tests for function call behavior and variable handling in the compiler, enhancing test coverage and ensuring correctness. 2025-07-21 11:28:32 -04:00
Tim Voronov
c3364ed4d8 Refactor LIST, MAP, and RANGE opcodes to LOADARRAY, LOADOBJECT, and LOADRANGE, update related emitter methods, adjust compiler logic for loop and scope handling, improve integration tests, and enhance disassembler output for updated opcodes. 2025-07-07 20:36:36 -04:00
Tim Voronov
a575483d0d Validate program input in disassembler, add ErrInvalidProgram, and update opcode formatting for improved clarity. 2025-07-07 16:29:18 -04:00
Tim Voronov
f20e75f1b1 Refactor loop initialization logic to include loop depth in label names, update operand formatting in disassembler, skip test cases using SkipCaseArray, and improve integration test coverage for nested FOR loops. 2025-07-07 13:29:50 -04:00
Tim Voronov
924c5282cf Organize imports across integration and unit test files for consistent structure. Initialize functions map in SymbolTable safely and refactor disassembler label handling logic. 2025-07-07 11:27:22 -04:00
Tim Voronov
8893605445 Refactor logical operator compilation (AND, OR) to improve label usage and short-circuit evaluation, update label definitions in Emitter, enhance disassembler with function and label metadata, and implement function validation in vm. 2025-07-03 21:17:38 -04:00
Tim Voronov
09df483164 Refactor iterator-related opcodes (OpIterSkip, OpIterLimit) to fix operand handling and label resolution in vm, emitter, and disassembler. Update instruction formatting and improve disassembler output. 2025-07-03 18:03:04 -04:00
Tim Voronov
a1e98c3c3c Refactor logical operator compilation to optimize short-circuit evaluation, add assembly utilities (assembler and disassembler), and migrate integration tests from bytecode to compiler package for improved organization. 2025-07-03 16:56:24 -04:00