Cheeky  Timeline

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

50 most recent check-ins

2026-04-01
23:41
Return: properly handle destruction for all active builders at the point of returning. leaf check-in: 2d0e71d3b3 user: lac tags: trunk
2026-03-31
17:49
Refactor attached values identities a bit so we can create a brace block's identity in advance if we need to. check-in: 5284244565 user: lac tags: trunk
2026-03-29
18:48
Begin implementing break/continue check-in: fa4346a9b0 user: lac tags: trunk
2026-03-27
17:35
Implement return stmt check-in: 537eff1079 user: lac tags: trunk
2026-03-19
18:36
Remove stray debug print check-in: 28982c90e0 user: lac tags: trunk
18:34
  • Some more work on the llvm backend
  • Fix some shit that came loose in the interpreter
  • Improved the macros to define builtin generic types and values
check-in: a625ab52ff user: lac tags: trunk
2026-03-16
18:58
  • Fix logging build
  • Update deps
check-in: 7b7ed916ad user: lac tags: trunk
18:48
llvm backend: implement mangling check-in: 9d0ff05c5b user: lac tags: trunk
2026-03-13
18:35
  • Fix function identity construction (don't include param names, properly prefix overloads)
  • Fix scoped overloads, add tests
check-in: 75cf2c34d0 user: lac tags: trunk
18:03
Refactor parameter typechecking to distinguish regular and function params, and whether they need to only match constants, to fix some issue with inline code blocks, and getting rid of some hacks. check-in: 577bb0d7ec user: lac tags: trunk
2026-02-17
23:32
llvm backend: implement type and value conversions for some of the basic types check-in: 3359855521 user: lac tags: trunk
2026-02-16
23:23
  • Fix polymorphic function specialization
  • Fix function identity not including specialized parameters
  • Added tests for polymorphic function specialization
check-in: 12987069a9 user: lac tags: trunk
2026-02-05
23:35
Added overridable functions to build llvm types and values check-in: 20b3ebba34 user: lac tags: trunk
2026-02-04
19:53
Add type and value lowering overridable functions check-in: 387689df58 user: lac tags: trunk
2026-02-03
23:02
Begin llvm backend implementation check-in: 5fb21721bf user: lac tags: trunk
2026-01-16
17:22
  • Add a tool to build llvm
  • Add inkwell, point it to the llvm built by the above tool
check-in: 7d1d14f691 user: lac tags: trunk
2026-01-15
20:16
Update deps check-in: cc6d14109c user: lac tags: trunk
20:10
Move out log viewer and dev setup to the tools directory check-in: 62ba9be15c user: lac tags: trunk
2026-01-13
22:51
More cleanup of old files from more renaming fuck ups check-in: d9c748ba3e user: lac tags: trunk
21:00
Explicitely emit a load instruction when reading a var to get the IR closer to the llvm IR that we want to generate check-in: ef4db2cb03 user: lac tags: trunk
2026-01-09
20:45
Remove an old file that was still around because of a renaming fuck up check-in: 9cf1e76af6 user: lac tags: trunk
2026-01-06
20:19
Update deps check-in: a92baad789 user: lac tags: trunk
19:45
  • Separate boolean and/or operators and shortcircuit evaluation operators.
  • Implemented compound assignment operators.
  • Painfully fixed several vexing problems related to type checking, solution scoring, and passing "raw" values to builtin funcs
check-in: 332a627f6c user: lac tags: trunk
2025-09-23
17:31
Implemented logic and comparison operators for bool check-in: d5a8c97f38 user: lac tags: trunk
2025-09-22
18:19
Add integer operators interpreter tests check-in: bbee75c799 user: lac tags: trunk
2025-09-21
08:10
Prevent local variables from being resolved as such while parsing a nested function's parameter list check-in: db92381206 user: lac tags: trunk
2025-09-19
19:02
Implemented tests (and fixes) for IR generation of integer operators check-in: 1a34e023cb user: lac tags: trunk
2025-09-18
20:42
  • Fix the comptime/computed value distinction versus constant/any param
  • Implemented tests for IR generation of ct_int computation
check-in: 6c7d4b2dc0 user: lac tags: trunk
17:55
Fix an issue with the way types were encoded as value, which prevented custom types from being recognized as such in some cases check-in: ee4770d4a3 user: lac tags: trunk
2025-09-15
17:36
Silence a bunch of the warnings caused by compiling with logging off check-in: e5fe8afe65 user: lac tags: trunk
17:30
Add tests (and fixes) for compile-time ct_int operators check-in: 44cba0489c user: lac tags: trunk
2025-09-14
14:32
Some renaming to prepare for a future proper separation between "prelude/library mode .cy0 files" and "normal mode .cy1 files" check-in: 7b3f27cb44 user: lac tags: trunk
2025-09-13
10:18
Implement arithmetic, logic and comparison operators for int check-in: dc727f3448 user: lac tags: trunk
2025-09-12
19:44
Implement arithmetic, logic and comparison operators for ct_int check-in: ca8810864e user: lac tags: trunk
2025-09-11
18:34
Some renaming before adding a bunch of crap check-in: f4da76a767 user: lac tags: trunk
18:28
Handle parenthesized expressions by adding a coercion rules that peels off tuples when they contain only one element check-in: 28058c9069 user: lac tags: trunk
2025-09-10
22:57
Add parsing rules and polyfunc declarations for arithmetic, logic, shift and comparison operators check-in: 0afb997753 user: lac tags: trunk
19:33
Change the function return type syntax to use a trailing arrow because the previous syntax have unworkable ambiguousness issues wrt calls, especially since parametric types will be comptime function calls check-in: 05a9cba1e4 user: lac tags: trunk
18:17
Logic and comparison IR instructions for bools check-in: 9bc2782896 user: lac tags: trunk
2025-09-09
21:13
Arithmetic, logic and comparison IR instructions for ints check-in: bb1226d964 user: lac tags: trunk
18:08
Added arithmetic, logic and comparison IR instructions for comptime ints check-in: 87b3d1d3f9 user: lac tags: trunk
2025-09-08
17:12
Split the interpreter into multiple files check-in: 6efb163d72 user: lac tags: trunk
2025-09-05
18:35
CTBigInt->Int coercion check-in: b62e0cf0e1 user: lac tags: trunk
2025-09-04
20:38
Fix extremely serious formatting mishap check-in: f09862828a user: lac tags: trunk
20:37
Func: register parameters for destruction check-in: 859877061d user: lac tags: trunk
20:08
Update deps check-in: 2bdcbfa8c8 user: lac tags: trunk
20:04
Add integer type check-in: 0eea66b6f8 user: lac tags: trunk
18:28
Implemented while (only IR generation tests for now because I just realised that I can't really test it without arithmetic and comparisons 🤡) check-in: 03d5b917ff user: lac tags: trunk
2025-09-03
20:46
Implemented if expressions check-in: 572417670d user: lac tags: trunk
2025-09-02
22:57
Remove a TODO comment that was already addressed check-in: 034aca8817 user: lac tags: trunk