Commit Graph

51 Commits

Author SHA1 Message Date
Krzosa Karol
15d452cae3 Module relative folders working 2022-06-27 10:24:58 +02:00
Krzosa Karol
6644a2c5ae Inline ast_module constructor 2022-06-27 10:11:12 +02:00
Krzosa Karol
3af20536fc Getting absolute paths, Ast_Files now compare absolute paths 2022-06-27 09:39:24 +02:00
Krzosa Karol
d33a18c8fe Calling main 2022-06-23 12:09:23 +02:00
Krzosa Karol
2c3a8dc764 Begin to codegen bytecode instructions 2022-06-21 15:49:39 +02:00
Krzosa Karol
9f7d51ff02 Initially was working on vargs but we need a new algorithm to match lambda call arguments 2022-06-20 16:23:35 +02:00
Krzosa Karol
4e288dcfab Cleaning up parsing / typechecking of calls slightly, adding any vargs 2022-06-20 09:28:38 +02:00
Krzosa Karol
aa5741203f For loop iterate through arrays and slices 2022-06-19 22:31:59 +02:00
Krzosa Karol
79edfae55b Lot's of work on Any and Type 2022-06-19 15:28:18 +02:00
Krzosa Karol
ade2638255 Better support for Type types, squashing bugs due to pointer confusion etc. 2022-06-19 10:18:57 +02:00
Krzosa Karol
94b820a071 Add switch case statement 2022-06-19 09:31:16 +02:00
Krzosa Karol
071a8de6a4 Compiling with Type_Info 2022-06-18 23:32:34 +02:00
Krzosa Karol
499faac256 Add error messages when file not found + error position 2022-06-18 09:58:48 +02:00
Krzosa Karol
ae62b6933e fixing compiler bugs 2022-06-17 10:35:05 +02:00
Krzosa Karol
c262e7e491 Multiple return values working! 2022-06-16 12:42:43 +02:00
Krzosa Karol
c604b44458 Slowly adding multiple return values 2022-06-16 11:48:47 +02:00
Krzosa Karol
4f0d16e632 Add Var Unpack 2022-06-16 08:56:31 +02:00
Krzosa Karol
cdeebfb8f9 Ported unicode conversions 2022-06-15 10:51:45 +02:00
Krzosa Karol
aab89ffada Add static and runtime assert 2022-06-15 10:30:33 +02:00
Krzosa Karol
7f5471de08 More resolved data in compound exprs, Fix invalid generation of compound exprs, 2022-06-14 21:41:41 +02:00
Krzosa Karol
a4513fcdfa Fix issue where compounds had not enough type information to typecheck 2022-06-14 20:42:32 +02:00
Krzosa Karol
f885abe3f5 -> Operator has very low precedence, size_of, align_of, length_of expressions 2022-06-14 13:50:59 +02:00
Krzosa Karol
17e342c4da Add resolved_type to Ast_Expr and remove from inheriting 2022-06-14 12:49:45 +02:00
Krzosa Karol
946e4082cc Working on slices, builtin stuff feels wanky, rewrite gen_simple_decl to
generate string
2022-06-14 12:00:48 +02:00
Krzosa Karol
2c431e3207 Writing more real program and squashing bugs 2022-06-13 20:22:40 +02:00
Krzosa Karol
955167ce18 Fixing bugs, prepending all names with context name 2022-06-13 18:07:17 +02:00
Krzosa Karol
f9487a2c24 New cast '->' 2022-06-13 15:38:54 +02:00
Krzosa Karol
2503a6d680 Fix adding loads multiple times 2022-06-13 15:24:50 +02:00
Krzosa Karol
a929e0b5ec Remove one of implicit arrays and still working 2022-06-13 15:05:47 +02:00
Krzosa Karol
4b16439a14 More work on modules, Ast_Module, Ast_File and Ast_Scope got unified 2022-06-13 14:04:47 +02:00
Krzosa Karol
bcd825c154 New concept of AST_MODULE, Ast_File and Ast_Module are now both scopes.
Concept of loading and importing.
2022-06-13 13:39:31 +02:00
Krzosa Karol
8bd5e9638f More module work 2022-06-13 12:01:28 +02:00
Krzosa Karol
b0553c38cf New module scheme 2022-06-13 10:49:10 +02:00
Krzosa Karol
cdaf85438e Package is Decl 2022-06-12 19:54:37 +02:00
Krzosa Karol
31c2c00452 Rearrange # flags, Add Windows.kl 2022-06-12 19:41:31 +02:00
Krzosa Karol
cd29798c1d AST_STRICT for type aliases 2022-06-12 13:09:37 +02:00
Krzosa Karol
cd3098da45 Add char * which is supposed to work like in C and int 2022-06-12 11:58:36 +02:00
Krzosa Karol
b76b9c605a Compound arrays 2022-06-11 09:54:35 +02:00
Krzosa Karol
bcddf7f721 Unify call and compound but have different kinds 2022-06-10 23:45:02 +02:00
Krzosa Karol
7365d6aa88 Basic compound parsing, maybe I should unify with calls again 2022-06-10 23:03:21 +02:00
Krzosa Karol
37e56a0914 Compiling global, work on AST_LAMBDA_EXPR 2022-06-10 22:06:35 +02:00
Krzosa Karol
decab135b8 Referencing other packages works!! 2022-06-10 19:25:57 +02:00
Krzosa Karol
ab663d0b01 Getting packages out of resolve_name 2022-06-10 17:07:58 +02:00
Krzosa Karol
957dbbd5cc Fix not top level ast's getting into ordered list. Delete parent nodes 2022-06-10 16:47:49 +02:00
Krzosa Karol
e2d07923c8 Add parent_scope on all nodes 2022-06-10 16:12:47 +02:00
Krzosa Karol
3402b4fe4d Add DECL_TYPE 2022-06-10 15:05:44 +02:00
Krzosa Karol
89b3e00ae4 Closer to old state 2022-06-10 14:08:27 +02:00
Krzosa Karol
d5d9911f3e More work on packages 2022-06-10 11:05:08 +02:00
Krzosa Karol
b0077fe9df Basic resolving, codegen with packages 2022-06-10 10:35:10 +02:00
Krzosa Karol
fbe911d267 Complete rework, adding packages 2022-06-09 21:30:52 +02:00