Commit Graph

31 Commits

Author SHA1 Message Date
saqut 49545a5667 fix: kaynak dosya yolu propagasyonu ve AST JSON girinti hataları
- Tokenizer::scan artik filePath parametresi alip Lexer'a iletiyor;
  SourceLocation.file artik bos degil (Asama 0 tamamlandi).
- JsonObject::add icin const char* overload eklendi (kind: true bug'i).
- JsonObject acilis suslu parantezi girintisiz yaziliyor, addArray ilk
  eleman oncesi bos satir birakmiyor; LiteralNode/IdentifierNode toJson
  ayni sekilde duzeltildi.
- analysisToJson girinti seviyeleri "analysis" objesine gore duzeltildi.
2026-06-14 15:57:54 +03:00
saqut 2ab895e4d8 chore: JsonObject builder, LiteralType enum, token.hpp doc cleanup 2026-05-27 10:53:18 +03:00
saqut c60e7fa3f6 Gemini 2026-05-27 10:29:30 +03:00
saqut d4ba00b93b refactor: modularize parser and AST components 2026-05-27 09:42:14 +03:00
saqut afb1e1afb0 feat: implement source location tracking and enhance parser AST nodes 2026-05-27 09:39:47 +03:00
saqut 30a5fab697 parser: function calls, struct, member/index access - Final.sqt parses successfully (289 tokens, 200+ AST nodes) 2026-05-26 17:27:06 +03:00
saqut 8da0ad4e14 cli: modular command system, AST JSON serialization, file split prep 2026-05-26 17:05:20 +03:00
saqut 76960417bd docs: todo.md (8 asamali yol haritasi) ve fikirler.md (backend ADR) 2026-05-26 00:41:04 +03:00
abdussamedulutas 163969ded6 docs: kapsamli ADR dokumantasyonu, tum kaynak dosyalara detayli kommentler 2026-05-26 00:24:27 +03:00
abdussamedulutas 5d9454987e feat: statement parser (if/for/while/do-while/return), keyword tokenizer düzeltmeleri
- Tokenizer: tüm keyword'ler eklendi (int, void, float, vb)
- Keyword boundary check: kısa keyword uzun identifier'la karışmıyor
- Lexer: '0' sonrası karakter kontrolü düzeltildi (0; token sorunu)
- Parser: if/else, for, while, do-while, return, break, continue desteği
- FunctionDecl, VariableDecl, Block, ExpressionStatement tam destek
- null expression koruması (sonsuz döngü engellendi)
2026-05-26 00:05:52 +03:00
abdussamedulutas dee4c76cdf fix: Pratt parser NUD/LED akışı, Token* slicing, null guard
- ParserToken artık Token* tutuyor (object slicing önlendi)
- parseNullDenotation atom'ları tüketip ilerliyor
- parseExpression while döngüsü currentToken() ile çalışıyor
- IR: null Left/Right ve null ASTNode girişi korumalı
- source.sqt: 1/(74-63+!1)-74*2/-0.7e+10 başarıyla parse ediliyor
2026-05-26 00:03:19 +03:00
abdussamedulutas dec5323a86 Rev 2026-05-26 00:00:21 +03:00
abdussamedulutas 4078da1b00 LLVM Backend ekleniyor 2026-01-12 09:46:38 +03:00
abdussamedulutas 1785455fcd GNU Lightning üzerinde çalışıldı 2026-01-11 21:34:23 +03:00
abdussamedulutas d3edaf91ce refactor: AST ve Token yapısında pointer semantiğine geçiş
- Bellekte 'object slicing' (nesne dilimlenmesi) sorununu önlemek için Token ve ASTNode yapıları pointer (yıldız) kullanımına geçirildi.
- Bellek sızıntılarını önlemek için temel sınıflara (Token, ASTNode) 'virtual destructor' eklendi.
- AST düğümlerine 'parent pointer' bağlantısı eklenerek ağaç üzerinde yukarı yönlü navigasyon sağlandı.
- IR (Ara Temsil) ve CodeGenerator katmanları projeye dahil edildi.
- Tokenizer'da EOL (satır sonu) kontrolü ve dinamik bellek tahsisi (new) optimizasyonları yapıldı.
2026-01-10 20:19:49 +03:00
abdussamedulutas 149542b37e Postfix ve Prefix operatörleri binaryexpression ve unary için işlenebilir hale getirildi 2026-01-01 14:32:14 +03:00
abdussamedulutas e906007f02 Pratt parser tamamlandı 2025-12-29 20:42:04 +03:00
abdussamedulutas d178bdebd0 Pratt Parsing Algoritması eklendi 2025-12-28 21:58:15 +03:00
abdussamedulutas b9a2173fd4 Parser yazmak için ön veri setleri oluşturuldu 2025-12-28 15:43:29 +03:00
abdussamedulutas 06c14017c2 vscode kod renklendirme geliştirildi 2025-12-28 15:43:08 +03:00
abdussamedulutas 75ce6759be VSCode deugging için çalışma ortamı oluşturuldu 2025-12-28 15:42:31 +03:00
abdussamedulutas afdb39c1ff Tokenizer Okuması kolaylaştırıldı 2025-12-28 15:40:47 +03:00
abdussamedulutas 10f849c944 Lexer daha anlaşılır hale getirildi 2025-12-28 14:35:18 +03:00
abdussamedulutas e1afda34ef Create parser 2025-12-26 20:15:28 +03:00
abdussamedulutas 3e3a8d0567 Renklendirme çalışmalarına başlandı 2025-12-24 00:18:30 +03:00
abdussamedulutas 71550c4003 Lexer and Tokenizer Completed 2025-12-23 21:05:36 +03:00
abdussamedulutas 02bf93dffc Readme 2025-12-23 15:08:07 +03:00
abdussamedulutas 7d14e9fa2e Readme 2025-12-23 14:54:54 +03:00
abdussamedulutas fe8bf8ffa3 Readme 2025-12-23 14:35:34 +03:00
abdussamedulutas 49b1a2af82 Readme 2025-12-23 14:34:30 +03:00
abdussamedulutas a0bf865910 delimiters ve operators eklendi 2025-12-23 13:50:09 +03:00