about summary refs log tree commit diff
path: root/boot
AgeCommit message (Collapse)Author
2026-05-05Type transpilation passes 1 & 2Mel
Signed-off-by: Mel <mel@rnrd.eu>
2026-05-04Initial structure for transpiler IR translation unit processMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-05-04Bump license year for touched filesMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-05-04Remove previous source tree-based transpiler, wire in lowering passMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-05-04Lift out any function closures in lowering pass 2Mel
Signed-off-by: Mel <mel@rnrd.eu>
2026-05-04Lower all styles of source loopsMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-05-04Lower source compound assigns and inc/dec statementsMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-05-04Lower source if + while + endless statementsMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-05-04Lowering pass lexical scope trackingMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-05-04Lower source expressions into simple IRMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-05-04Initial lowering pass 2 implementation, create shells for source expressions ↵Mel
and statements Signed-off-by: Mel <mel@rnrd.eu>
2026-05-04Lower down structural (inline) type definitions into type objectsMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-05-04FNV-1a hashing algorithmMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-05-04Topologically sort types and their dependencies during lowering, report cyclesMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-05-04Complete lowering pass 1, fully collect all top-level declarations and their ↵Mel
dependencies Signed-off-by: Mel <mel@rnrd.eu>
2026-05-03IR lowering pass 1, function declarationsMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-05-03Macro for empty leaf walking for IR visiting, re-formatMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-05-03Lowering pass initial driver shellMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-05-03Add basic test harness for IR testingMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-05-03IR visit system and pretty printerMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-05-03Intermediate representation taxonomyMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-05-03Move tree visit definitions in visit.c to visit/tree.c for future consistencyMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-05-03Rename tree nodes to add consistent prefix, de-node, clean-up namesMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-01-27TinyCC (libtcc) backend for catbootMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-01-26Streamline build and temporary build directory, copy runtimeMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-01-25Allow different transpile pass output typesMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-01-22Implement file embedding into compiler sources during buildMel
Signed-off-by: Mel <mel@rnrd.eu>
2026-01-22LLVM clang compiler backendMel
Signed-off-by: Mel <mel@rnrd.eu>
2025-12-29Add first bootstrapping transpiler testMel
Signed-off-by: Mel <mel@rnrd.eu>
2025-12-28Expand bootstrap common library with generic Array and more String utility ↵Mel
functions Signed-off-by: Mel <mel@rnrd.eu>
2025-08-24Parameterize/improve failure and check functionsMel
Signed-off-by: Mel <mel@rnrd.eu>
2025-08-05Add runtime library for catskill transpiled artifacts, wrapping main ↵Mel
function with correct types Signed-off-by: Mel <mel@rnrd.eu>
2025-08-05Add core library for catskill transpiled source, output defined types in ↵Mel
transpiler Signed-off-by: Mel <mel@rnrd.eu>
2025-08-05Add 'transpile' to test harness targetsMel
Signed-off-by: Mel <mel@rnrd.eu>
2025-07-23Add rudimentary catskill-to-C transpiler (yay!)Mel
Signed-off-by: Mel <mel@rnrd.eu>
2025-07-23Add option to test suite to auto-adjust expected output in definitionMel
Signed-off-by: Mel <mel@rnrd.eu>
2025-07-22Remove ambiguity from construct expressions and if/for/while blocksMel
Signed-off-by: Mel <mel@rnrd.eu>
2025-07-18Separate call/construct expression back into partsMel
This makes it easier to decide whether subject should be interpreted as a type of expression. Signed-off-by: Mel <mel@rnrd.eu>
2025-07-18Add catboot test for simple typesMel
Signed-off-by: Mel <mel@rnrd.eu>
2025-07-10Fix nil-dereference in `parser_node_type_class`Mel
Signed-off-by: Mel <mel@rnrd.eu>
2025-07-10Display causing tokens lexeme directly from source for error messagesMel
Signed-off-by: Mel <mel@rnrd.eu>
2025-07-10Expand common string library with `String_View` and format macrosMel
Signed-off-by: Mel <mel@rnrd.eu>
2025-07-09Parse unary reference and dereference operatorsMel
Signed-off-by: Mel <mel@rnrd.eu>
2025-07-09Rudimentary semi-recoverable parser panic modeMel
Signed-off-by: Mel <mel@rnrd.eu>
2025-07-09Add NORETURN to failure functions, add `unreachable`Mel
Signed-off-by: Mel <mel@rnrd.eu>
2025-07-09Shorten token_span_to_line_span and reduce edge case errors in itMel
Signed-off-by: Mel <mel@rnrd.eu>
2025-07-09Multi-error display and fix up finding line boundriesMel
Signed-off-by: Mel <mel@rnrd.eu>
2025-07-09Display human-readable, informative parser error messages w/ source snippetMel
Signed-off-by: Mel <mel@rnrd.eu>
2025-07-06Print formatted lex token value next to token typeMel
Signed-off-by: Mel <mel@rnrd.eu>
2025-07-06Correct handling of empty block nodesMel
Signed-off-by: Mel <mel@rnrd.eu>