Commit Graph

45 Commits

Author SHA1 Message Date
Krzosa Karol
e2e684294e Add bool values to parser, and bool nodes to ast 2022-06-02 23:48:03 +02:00
Krzosa Karol
2909214ee0 Add floats 2022-06-02 22:52:16 +02:00
Krzosa Karol
ebb21df015 Before adding untyped types 2022-06-01 21:38:39 +02:00
Krzosa Karol
75985de125 Add more operators to lexer 2022-06-01 19:12:56 +02:00
Krzosa Karol
494a937d1f Rewritten the expression parser, tldr that '.' is actually right associative binary operator, I brain farted really hard this time 2022-06-01 18:59:38 +02:00
Krzosa Karol
364daed1c7 Fix field parsing 2022-06-01 15:00:27 +02:00
Krzosa Karol
a5267bb8ae Adding lvalue rvalue concept, Cleanup 2022-06-01 13:23:21 +02:00
Krzosa Karol
9b18c106b6 Basic variable reassignments 2022-06-01 12:13:02 +02:00
Krzosa Karol
86aec0b1eb More cleanup 2022-05-31 23:01:55 +02:00
Krzosa Karol
98d2389c9f Cleanup 2022-05-31 22:52:56 +02:00
Krzosa Karol
0360086bab Restructure 2022-05-31 18:29:35 +02:00
Krzosa Karol
20accf8293 Parsing for stmt 2022-05-31 16:45:20 +02:00
Krzosa Karol
41697dec80 Ast_Init is not Ast_Binary with TK_Comma 2022-05-31 16:24:04 +02:00
Krzosa Karol
627e2bad88 Initial enums working 2022-05-31 11:50:36 +02:00
Krzosa Karol
980a3b68b9 Struct field access. Damn, I coded for like 30 minutes and then it just worked on the first try 2022-05-30 18:27:06 +02:00
Krzosa Karol
3a97e739a8 More work on calls and compound statements 2022-05-30 13:22:57 +02:00
Krzosa Karol
9e24a608cb Rewriting function calls to have named parameters, default values 2022-05-30 11:00:30 +02:00
Krzosa Karol
54e3cb5261 On constructors 2022-05-30 09:10:15 +02:00
Krzosa Karol
c305d4da44 Calling functions is working, same syntax as compound stmts 2022-05-30 09:04:34 +02:00
Krzosa Karol
802dce749e Change syntax of compound exprs 2022-05-29 23:42:53 +02:00
Krzosa Karol
ea1b74cda0 Adding struts 2022-05-29 12:30:02 +02:00
Krzosa Karol
07b793aacc Begin structs, add comment on multiline lambdas, add Ast flags 2022-05-29 11:29:26 +02:00
Krzosa Karol
7de941899f Fix crashes 2022-05-28 17:48:52 +02:00
Krzosa Karol
798453c7db Adding parent nodes to asts 2022-05-27 16:19:18 +02:00
Krzosa Karol
8875b61970 Add typedefs in codegen, globals is working 2022-05-27 15:00:45 +02:00
Krzosa Karol
46abf8c1a6 Initial working version of types as expressions 2022-05-27 13:46:27 +02:00
Krzosa Karol
d8a9b318b7 Changing typespecs to be normal expressions 2022-05-27 12:29:51 +02:00
Krzosa Karol
f66fd447e5 Removed resolved pointer from Ast_Typespec, it's accessed using a map now 2022-05-27 12:05:23 +02:00
Krzosa Karol
b773ad1c17 Trying to add order indendent decls 2022-05-26 21:09:07 +02:00
Krzosa Karol
0e398c84b6 Cleanup, There is no decl anymore, Ast_Named 2022-05-26 20:21:24 +02:00
Krzosa Karol
ec773c08be Add init statement to if 2022-05-26 18:57:15 +02:00
Krzosa Karol
3d9a38494c Add if statements 2022-05-26 18:13:37 +02:00
Krzosa Karol
3cd79040bc Fix compile errors when compiling for msvc 2022-05-26 16:55:07 +02:00
Krzosa Karol
c88b38cc44 Successful compile with new parser! 2022-05-26 14:49:50 +02:00
Krzosa Karol
f4c05923c9 Compile string, working on scopes 2022-05-26 11:54:12 +02:00
Krzosa Karol
b945f3affd Lambdas, statements, typechecking lambdas 2022-05-25 14:44:30 +02:00
Krzosa Karol
9dc2e1588d Work on lambda body 2022-05-24 23:35:49 +02:00
Krzosa Karol
52910d5606 Lexer is not collecting hanging new lines 2022-05-24 22:13:53 +02:00
Krzosa Karol
e032fefd07 Ast modified, Ast_Expr is not a union instead it uses inheritence 2022-05-24 21:01:27 +02:00
Krzosa Karol
5176b40204 Generating valid c code, more work on null values 2022-05-24 20:33:11 +02:00
Krzosa Karol
236ff0cd64 Added lambda expressions, lambda types, no body yet 2022-05-20 17:16:53 +02:00
Krzosa Karol
30736d37b6 Starting from scratch on smaller scale, typechecking global and constant variables, compound expressions for arrays 2022-05-20 10:54:20 +02:00
Krzosa Karol
d993623a50 Types, Fixed personal arena 2022-05-13 22:02:55 +02:00
Krzosa Karol
ea0b1c352d Allocator logging 2022-05-13 20:36:42 +02:00
Krzosa Karol
2689aa9ba1 Pratt parsing, basic ast, decl parse const 2022-05-13 16:04:39 +02:00