Commit Graph

89 Commits

Author SHA1 Message Date
Michael Schimmel 0b4201fe9b Ast editor unit refactoring 2025-11-28 14:03:49 +01:00
Michael Schimmel 833ce8aada Ast editor unit refactoring 2025-11-28 13:45:33 +01:00
Michael Schimmel 85ef043b04 Compiler errors 2025-11-25 18:11:04 +01:00
Michael Schimmel d334ffdc73 Resolved cyclic dependencies between environment and compiler stages 2025-11-23 17:55:47 +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 ae10f4eee0 Static specialization done 2025-11-19 21:22:01 +01:00
Michael Schimmel d0d1053faf Static specialization WIP
Fix in ScopeDescriptor 2
2025-11-19 16:01:14 +01:00
Michael Schimmel 138e7ac454 Static specialization WIP 2025-11-19 14:38:40 +01:00
Michael Schimmel 7aa406f27b Macro hygiene 2025-11-09 18:22:09 +01:00
Michael Schimmel be5f36e04a Ast environment refactoring 2025-11-08 16:00:37 +01:00
Michael Schimmel 93dc19497c Ast environment refactoring 2025-11-08 15:57:12 +01:00
Michael Schimmel c16f47c6d5 Fix in Testcase 2025-11-08 10:45:04 +01:00
Michael Schimmel c0f871ce02 Ast environments 2025-11-07 19:40:35 +01:00
Michael Schimmel 4ccf3bb5fd Macros refactoring 2025-11-06 17:41:07 +01:00
Michael Schimmel 6851f745d4 Unit compiler namespaces 2025-11-05 21:50:36 +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 25984fe61a Refactoring node to be immutable 2025-11-05 15:15:12 +01:00
Michael Schimmel c0a689d2bc Refactoring for immutable nodes 2025-11-05 13:21:17 +01:00
Michael Schimmel 48ccb23060 Refactoring 2025-11-04 18:22:06 +01:00
Michael Schimmel 2b8a3effed Visualizer node aggregates
Fix in macro expander
2025-11-04 17:45:47 +01:00
Michael Schimmel ec76b78b39 Nop-Node 2025-11-03 00:35:23 +01:00
Michael Schimmel 92cfe94463 Fixed quasiquote expansinon 2025-11-02 20:04:56 +01:00
Michael Schimmel ea39a57b77 Binder refactoring, Monster refactoring 2025-11-02 19:38:52 +01:00
Michael Schimmel 8f29212cba Binder refactoring - extracted TCO - WIP 2025-11-01 15:44:56 +01:00
Michael Schimmel 915deb4dc0 Binder refactoring - extracted lowering 2025-11-01 14:56:38 +01:00
Michael Schimmel 734b7b1d5e Binder refactoring - extracted type checking 2025-11-01 14:14:17 +01:00
Michael Schimmel 4687ecb9ca Binder refactoring - extracted macro expander 2025-11-01 13:36:10 +01:00
Michael Schimmel 8abec8e98f Keywords 2025-10-31 18:12:53 +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 b0d87fdc69 New visualizer 2025-10-30 13:26:50 +01:00
Michael Schimmel f1735e2678 New visualizer 2025-10-29 23:07:49 +01:00
Michael Schimmel e95a920dc7 New visualizer 2025-10-26 18:06:45 +01:00
Michael Schimmel e379e6694c AST Types 2025-10-26 09:58:42 +01:00
Michael Schimmel e0c4cf7ee4 Accessing RTL symbols 2025-10-07 13:21:25 +02:00
Michael Schimmel 0d73a13051 Macro expander integrated in binder 2025-10-05 02:45:13 +02:00
Michael Schimmel 54bf350c70 Macro expander integrated in binder 2025-10-04 22:41:01 +02:00
Michael Schimmel 7c48e9e203 Macro expander integrated in binder 2025-10-04 19:05:50 +02:00
Michael Schimmel d9219474e0 1st full macro expander 2025-10-03 19:46:30 +02:00
Michael Schimmel 624af31243 Added user library 2025-09-24 10:03:10 +02:00
Michael Schimmel c573628fe5 Major refactoring, split Bound Ast from source Ast 2025-09-22 19:56:51 +02:00
Michael Schimmel 8041f7355f Scripting refinement 2025-09-21 12:51:06 +02:00
Michael Schimmel 36fe827b00 Scripting refinement 2025-09-21 11:09:55 +02:00
Michael Schimmel 00f5861148 Global data value refactoring + 1st scripting version 2025-09-20 18:30:32 +02:00
Michael Schimmel 7621849bfb RECUR keyword added 2025-09-20 12:23:37 +02:00
Michael Schimmel 81dd69bf49 RECUR keyword added 2025-09-20 12:06:51 +02:00
Michael Schimmel e03155179a Anonymous recursions 2025-09-19 23:53:48 +02:00