samsonium
a4aa220cfa
feat: implement extern block analyzer
2026-10-31 01:58:10 +03:00
samsonium
5c96f96220
wip: working on dynamic linking
...
- Feat: add analyzers for:
- external functions
- reference
- structures
- type definitions
- Feat: add new nodes to debug print (ast)
2026-10-30 20:32:14 +03:00
samsonium
f769313169
feat: implement extern block reading and parsing
2026-10-29 22:13:28 +03:00
samsonium
bbdf91ee02
fix: cutted space in string literal begin
2026-10-29 17:46:08 +03:00
samsonium
27374a96eb
fix: AST levels print
2026-10-29 17:45:39 +03:00
samsonium
7b804b8809
feat: optimize runtime (2x+ faster)
2026-10-29 05:21:00 +03:00
samsonium
8c90d54782
ref: split parser into separate files
2026-10-29 00:08:44 +03:00
samsonium
62b0030e4a
ref: move analyzer fn defs into compiler/iternals
2026-10-28 23:24:17 +03:00
samsonium
bbdaa4a9b9
ref: split reader into separate files
2026-10-28 23:12:46 +03:00
samsonium
7c04d8b7ec
ref: remove unused loop checker
2026-10-28 23:12:06 +03:00
samsonium
d93c315359
fix: clear first AST node if got error inside parse_program
2026-10-28 19:37:17 +03:00
samsonium
e11089c90f
feat: implement format strings
2026-10-28 17:57:18 +03:00
samsonium
dc80de66e4
fix: review problems
2026-10-27 15:40:25 +03:00
samsonium
c61322718d
fix: some analysis stage problems
2026-10-27 14:12:09 +03:00
samsonium
aa7a06bd22
feat: finish implementing analyzer
2026-10-27 12:50:58 +03:00
samsonium
a263b6206f
wip: working on analyzer
...
- Feat: add assigns analysis
- Fix: change node check condition in binary math analysis
- Feat: add unary and binary conditions analysis
- Fix: add type passtrough in declaration analysis
- Feat: add unary math analysis
2026-10-27 12:21:49 +03:00
samsonium
25991c6f15
wip: working on analyzer
...
- Feat: add binary math analysis
- Fix: check for function context in block analysis
- Feat: add 'break' analysis
- Fix: few fixes in call analysis
- Feat: add class analysis
- Feat: add construct analysis
- Feat: add declaration analysis
- Feat: add field analysis
- Feat: add function analysis
- Feat: add loop analysis
- Ref: updated utilities and context functions
2026-10-27 05:18:36 +03:00
samsonium
d7630dbb6a
wip: working on analyzer
...
- Feat: implement return analyzer
- Fix: add block return check if inside function
2026-10-26 22:20:09 +03:00
samsonium
a70ad011f3
wip: working on analyzer
...
- Feat: add `nest_ctx` and `fin_ctx` fns for working with context and
environment
- Feat: add block analyzer
- Feat: add conditional statement analyzer
2026-10-26 21:34:54 +03:00
samsonium
62ae05b4cd
wip: working on analyzer
...
- Feat: now symbols table store node on PUT
- Feat: call analyzer with callee resolving and arguments validate
- Feat: identifier analyzer
- Feat: analyzer utils (types compat, tok-to-type, type-to-string)
2026-10-26 20:47:24 +03:00
samsonium
4904f40037
wip: working on analyzer
2026-10-25 19:24:02 +03:00
samsonium
6d1f1ce66e
fix: memory leak in postfix parsing function
2026-10-25 04:57:01 +03:00
samsonium
c03fddf47f
fix: fixes in compiler
2026-10-25 04:52:18 +03:00
samsonium
c4eb148d17
ref: temporary comment out infinite loop check
2026-10-25 01:54:49 +03:00
samsonium
7cfb8efef4
feat: implement break
2026-10-22 21:30:32 +03:00
samsonium
a20743a835
feat: implement simple infinite loop checker
2026-10-22 20:24:48 +03:00
samsonium
5dde75523d
wip: working on loop infinity checker
2026-10-22 18:25:07 +03:00
samsonium
cc5bbd61f2
feat: implement loops
2026-10-22 18:24:28 +03:00
samsonium
73a2a50a0b
feat: add error message for variable redefenition attempt
2026-10-21 04:42:58 +03:00
samsonium
c7cce94119
fix: add AST freeing on errors; add checks for parser, walker and writer are not NULL
2026-10-21 04:31:57 +03:00
samsonium
673a28fbc7
fix: check for EOF on block parsing (closing brace)
2026-10-21 04:31:02 +03:00
samsonium
5e58ea1796
Merge branch 'master' into docs
2026-10-19 20:11:53 +03:00
samsonium
1e518c4c82
fix: sanitizer checks fix (iteration 3 - final)
2026-10-19 20:11:48 +03:00
samsonium
3f2f03f931
fix: sanitizer checks fix (iteration 2)
2026-10-19 19:54:11 +03:00
samsonium
1289f6c150
fix: sanitizer checks fix (iteration 1)
2026-10-19 19:41:39 +03:00
samsonium
04b367e7a0
fix: warnings fix (after -Wall -Wextra)
2026-10-19 18:39:40 +03:00
samsonium
d09468cc6b
fix: critical fixes for newer compiler versions
...
- Add token check before parsing statement or program
- Fix program freeing
2026-10-19 17:50:31 +03:00
samsonium
c2532ae11f
upd: update usage hint in vm and compiler
2026-10-19 04:04:32 +03:00
samsonium
801b28e27d
feat: implement address deferencing
2026-10-18 18:42:02 +03:00
samsonium
c0df5fc9d4
feat: add exit builtin function
2026-10-18 18:41:49 +03:00
samsonium
c0c90f4f1a
fix: clear fn return type value
2026-10-17 21:24:21 +03:00
samsonium
8c33464656
feat: add null as value token
2026-10-17 21:23:50 +03:00
samsonium
f1e97b94a4
fix: fix toke->value assign on name-not-found error
2026-10-17 20:20:10 +03:00
samsonium
645120eda6
feat: implement objects moving and borrowing
2026-10-17 19:24:03 +03:00
samsonium
bc5d887ec4
feat: implement objects and classes
2026-10-16 18:11:28 +03:00
samsonium
683dd08181
wip: working on classes
2026-10-15 21:41:45 +03:00
samsonium
69b2253c34
feat: enhance compiler
...
- Add comments and test for it
- Add semicolon as required end of some expressions
- Add new arguments parser
- Add multi-file compilation
- Add colors in output
2026-10-15 17:20:43 +03:00
samsonium
1035b9193c
feat: add comments
2026-10-15 15:52:47 +03:00
samsonium
2c206822ca
feat: implement functions
2026-10-15 02:23:43 +03:00
samsonium
cc3087296f
ref: remove backpatch table in walker
2026-10-14 20:10:37 +03:00