Commit Graph

189 Commits

Author SHA1 Message Date
3f3f161151 VERY hacky f64 printing 2026-06-26 09:34:18 +02:00
e4582ec85a float literals 2026-06-24 18:06:58 +02:00
213e3d4b37 floats 2026-06-24 17:20:57 +02:00
7259f13191 simple enums 2026-06-08 19:46:29 +02:00
2864548daf finally allow bare returns 2026-06-07 13:10:36 +02:00
d4fe032a3a emit debug flag 2026-06-07 12:03:22 +02:00
802a6d8b53 remove aoc solutions 2026-06-07 09:36:21 +02:00
a9bd4fe9f9 string hosts in net.* 2026-06-07 09:33:26 +02:00
a727a52ffb ptr.free 2026-06-06 23:55:02 +02:00
670596e1ff sort std 2026-06-06 22:47:16 +02:00
3098d0abf9 uniform function call syntax 2026-06-06 22:29:25 +02:00
3a53cd4f32 remove the pipe operator 2026-06-06 19:41:54 +02:00
c41c22e936 compute for's end only once 2026-06-06 19:36:28 +02:00
22874181cd desguar += and -= 2026-06-06 18:53:11 +02:00
535364931e parse negative constants 2026-06-06 09:26:34 +02:00
a6d44ec5e0 calculate needed stack space with a disgusting hack 2026-06-05 20:24:50 +02:00
be42267a59 io.snprintf 2026-06-05 09:47:59 +02:00
803aee772e net._build_sa, str.from_i64_buf 2026-06-04 21:35:02 +02:00
0b1b424478 remove array.new, std optimizations 2026-06-03 20:07:31 +02:00
a81742a7ec str.Builder 2026-06-03 19:06:50 +02:00
31b71a5e19 _stackalloc 2026-05-30 21:01:01 +02:00
f181cfe675 replace the horrible error system with multiple returns 2026-05-28 17:28:57 +02:00
0b16cc4513 destructuring multiple returns 2026-05-28 16:55:16 +02:00
eb14607f2a allow returning a second value via rdx 2026-05-28 09:41:11 +02:00
fa5ff0aaa5 turn Assign into a statement 2026-05-28 08:49:18 +02:00
45253bf004 stack allocated structs, print ips in net examples 2026-05-27 20:34:26 +02:00
4fda79f0bc new var declaration syntax 2026-05-27 20:25:58 +02:00
284bc61f24 typecheck chained pointer operations 2026-05-13 14:11:05 +02:00
027245684d type inference for variables 2026-05-13 14:01:44 +02:00
5f2082ef57 attach id to expressions 2026-05-13 13:14:55 +02:00
52443c837b --no-stdlib 2026-04-11 23:59:15 +02:00
3fd4fcd062 hex improvements 2026-04-09 15:01:36 +02:00
a17ffa184a _var_arg 2026-04-04 13:14:58 +02:00
bb42e1fcf7 parse variadic functions 2026-04-04 12:17:44 +02:00
86de997be3 hashmaps, enforce main function type 2026-03-20 19:27:51 +01:00
3efbb3ecd1 io.is_a_directory, octal literal constants 2026-03-20 15:35:35 +01:00
efe9dfe238 parse cli on our own 2026-03-19 13:42:12 +01:00
8758295641 Analyzer -> SymbolTable 2026-03-19 13:18:24 +01:00
e24763dfb6 gut analyzer by moving the arity check to the typechecker 2026-03-19 13:16:34 +01:00
2d2a2c667f LICENSE 2026-03-19 13:14:50 +01:00
625fc0d811 typecheck_expr doesnt need to mutate the TypeChecker 2026-03-18 19:08:10 +01:00
0dbe7560b6 refactor the nasty RefCell by parsing everything first 2026-03-18 18:53:13 +01:00
e774f06e65 validate types in New/Struct/Cast 2026-03-18 11:47:29 +01:00
2137d49abd typecheck if and while conditions, disallow ptr multiplication 2026-03-18 11:34:25 +01:00
3efb3820bc fix a bug that caused stuff to not get typechecked 2026-03-17 17:34:49 +01:00
4154901339 typecheck return types 2026-03-17 17:11:14 +01:00
664a51c88d add casts to examples 2026-03-17 16:34:20 +01:00
15a68a41d1 use FnType instead of the tuple mess 2026-03-17 16:27:39 +01:00
a3f480dc1d typecheck function calls 2026-03-17 16:10:28 +01:00
5846f7e730 casts, typecheck struct field access 2026-03-17 15:25:28 +01:00