Commit Graph

37 Commits

Author SHA1 Message Date
Michael Schimmel b3ca67428d Small refactorings 2026-01-13 23:51:41 +01:00
Michael Schimmel 2cc5e53394 Replaced Count-Node by RTL-Function 2026-01-13 23:17:32 +01:00
Michael Schimmel 3b3966b2f7 new-Series with tuple record def 2026-01-06 13:38:06 +01:00
Michael Schimmel 40ed51aef8 ITupleNode signature change 2026-01-06 11:37:18 +01:00
Michael Schimmel 264314cd93 Pipe Parameter is now a Tuple 2026-01-05 00:13:51 +01:00
Michael Schimmel 242ec9a56e AST list refactoring 2026-01-04 22:41:44 +01:00
Michael Schimmel 991b998cb1 Tuples 2026-01-04 18:48:04 +01:00
Michael Schimmel 22674b962b Generic Visitors 2026-01-03 19:14:18 +01:00
Michael Schimmel 1d13d0cdaa Ast ternary expr replaced by cond expr 2025-12-07 12:06:29 +01:00
Michael Schimmel e40f56eaeb Ast editor custom draw 2025-12-06 17:32:04 +01:00
Michael Schimmel 9ed563bcc1 Ast visitor refactoring 2025-12-04 11:28:40 +01:00
Michael Schimmel 851f56c63f Ast list nodes 2025-11-29 18:59:16 +01:00
Michael Schimmel a052dfb20f AST testing 2025-11-23 00:24:43 +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 138e7ac454 Static specialization WIP 2025-11-19 14:38:40 +01:00
Michael Schimmel 1f0eef7698 Node immutability improved 2025-11-05 18:13:43 +01:00
Michael Schimmel 0915d6d90d Resolved dependency between AST nodes and scope 2025-11-05 16:52:40 +01:00
Michael Schimmel b98e7d98e6 Refactoring node to be immutable 2025-11-05 15:24:54 +01:00
Michael Schimmel 9bd2d6f7ab Imutability for macro nodes 2025-11-05 12:19:34 +01:00
Michael Schimmel d82a75aba6 Making AST node inmmutable - WIP 2025-11-04 20:12:12 +01:00
Michael Schimmel ec76b78b39 Nop-Node 2025-11-03 00:35:23 +01:00
Michael Schimmel ea39a57b77 Binder refactoring, Monster refactoring 2025-11-02 19:38:52 +01:00
Michael Schimmel 6ab51816d1 Binder refactoring 2025-11-01 13:09:29 +01:00
Michael Schimmel 0526ec8a24 Keywords 2025-10-30 20:27:44 +01:00
Michael Schimmel 798aa08f02 Keywords 2025-10-30 18:00:58 +01:00
Michael Schimmel 54bf350c70 Macro expander integrated in binder 2025-10-04 22:41:01 +02:00
Michael Schimmel d9219474e0 1st full macro expander 2025-10-03 19:46:30 +02:00
Michael Schimmel fd97799b7b added macrodef 2025-10-03 13:49:12 +02:00
Michael Schimmel 1c1bd4cdca Fixed closure upvalue scoping 2025-09-30 17:25:28 +02:00
Michael Schimmel e1a46da6f8 Fix in Recur Node declaration 2025-09-29 11:23:39 +02:00
Michael Schimmel 624af31243 Added user library 2025-09-24 10:03:10 +02:00
Michael Schimmel 411fd0a3ce Unit rename 2025-09-23 12:54:46 +02:00
Michael Schimmel c573628fe5 Major refactoring, split Bound Ast from source Ast 2025-09-22 19:56:51 +02:00
Michael Schimmel 81dd69bf49 RECUR keyword added 2025-09-20 12:06:51 +02:00
Michael Schimmel c31985935c RTL enhancements 2025-09-19 15:05:20 +02:00
Michael Schimmel d12c6c966c Fix in Upvalue-Logic 2025-09-18 20:11:12 +02:00