Commit Graph

13 Commits

Author SHA1 Message Date
Michael Schimmel 40ed51aef8 ITupleNode signature change 2026-01-06 11:37:18 +01:00
Michael Schimmel 242ec9a56e AST list refactoring 2026-01-04 22:41:44 +01:00
Michael Schimmel a4afae6f39 Tuples 2026-01-04 17:06:59 +01:00
Michael Schimmel 22674b962b Generic Visitors 2026-01-03 19:14:18 +01:00
Michael Schimmel 851f56c63f Ast list nodes 2025-11-29 18:59:16 +01:00
Michael Schimmel 521d0ac28f Ast editor rondtrip 2025-11-28 16:07:47 +01:00
Michael Schimmel aff4cec7d5 AST Identities 2025-11-25 19:41:26 +01:00
Michael Schimmel 4e508d90a5 Compiler exceptions 2025-11-25 15:27:57 +01:00
Michael Schimmel d334ffdc73 Resolved cyclic dependencies between environment and compiler stages 2025-11-23 17:55:47 +01:00
Michael Schimmel 240f794211 AST function purity analysis 2025-11-22 14:49:24 +01:00
Michael Schimmel 58c44079f7 Refactor Compiler Pipeline: Decouple Scope Layout from Runtime Descriptor
- **Architecture:** Split `IScopeDescriptor` into `IScopeLayout` (Binder/Structure) and immutable `IScopeDescriptor` (Runtime/Types).
- **Binder:** Now produces `IScopeLayout` via `IScopeBuilder`. Restored Upvalue tracking and Lambda nesting detection.
- **TypeChecker:** Introduced `TTypeContext` to track types during traversal. Now produces the final `IScopeDescriptor`.
- **Evaluator:** Adapted to new `ILambdaExpressionNode` structure.
- **Fixes:** Resolved `Scope depth mismatch` in TypeChecker and `AccessViolation` in Evaluator due to lost parent scopes.
2025-11-21 12:01:14 +01:00
Michael Schimmel ae10f4eee0 Static specialization done 2025-11-19 21:22:01 +01:00
Michael Schimmel 138e7ac454 Static specialization WIP 2025-11-19 14:38:40 +01:00