7 Commits
Author SHA1 Message Date
gmagostini 2498b3b345 Merge pull request 'Ai/refactor' (#1) from ai/refactor into dev
Reviewed-on: https://gitea.lambstudios.eu/ProjectValkay/rlox/pulls/1
2026-07-06 17:14:35 +00:00
Giulio Agostini b93a1394cd Update parser.rs 2026-07-06 19:10:01 +02:00
Giulio Agostini 842216729b wip:
Add type system and refator for having only epression
2026-07-06 10:43:17 +02:00
Giulio Agostini 9f15a00b98 Add static variable resolution with scope tracking
- Add distance-based get_at on EnvironmentStack
- Add distance-based assign_at on EnvironmentStack
- Introduce ErrorSink to accumulate diagnostics across passes
- Implement Resolver with a ScopeStack and per-node distance map
- Extend interpreter to store locals distances for runtime lookup
- Add tests for resolution behavior and error accumulation
  Add static variable resolution with scope tracking
2026-06-30 15:05:34 +02:00
Giulio Agostini d40fe2a550 Introduce NodeId for AST and synthetic slices 2026-06-30 14:05:46 +02:00
Giulio Agostini ef8abda048 Move variable resolution to middleend
- Introduce AST-based visitor and resolver in middleend
- Update guard field and parser to use AstNode<Expr>
- Remove backend variable_resolution and adjust exports
- Expose middleend in the library
2026-06-30 09:47:22 +02:00
Giulio Agostini 29c86d278d Make environment generic and adapt closures
Added unit test
2026-06-29 20:50:29 +02:00