Commit Graph

  • 6775ddf7d4 fix(furlang): use std::free() instead of delete in arena CHatingPython 2026-06-01 21:14:56 +02:00
  • 62619cd0bc refactor(IR)!: change IR block structure CHatingPython 2026-06-01 18:27:36 +02:00
  • de49674f81 refactor(IR): add branch instruction on block exit in if statement CHatingPython 2026-06-01 18:11:38 +02:00
  • 045ce7be59 fix(IR): use register operands instead of variable for local variables CHatingPython 2026-06-01 18:06:03 +02:00
  • 011e0e8bad refactor(furc): introduce ir_register type CHatingPython 2026-06-01 17:47:40 +02:00
  • b6e5f1f5cc refactor(furc): mark AST nodes as final CHatingPython 2026-06-01 17:44:40 +02:00
  • 6ffe1cefbe refactor(furc): rename some token types to PascalCase CHatingPython 2026-06-01 17:37:36 +02:00
  • 0958389b90 refactor(furc): unify visit functions in AST visitor CHatingPython 2026-06-01 17:28:40 +02:00
  • 7caaaac4a0 feat(furc): add compound statement CHatingPython 2026-06-01 17:23:00 +02:00
  • 55f4435670 fix(furc): bring back the LIBFURC guard to main.cpp CHatingPython 2026-05-31 20:12:23 +02:00
  • 9b1a7d5a0b Implement var read and assign IR CHatingPython 2026-05-31 18:20:46 +02:00
  • 91ef7f01a4 Add if statement CHatingPython 2026-05-31 17:29:17 +02:00
  • 646d185d40 Implement basic IR generator CHatingPython 2026-05-31 16:15:53 +02:00
  • f431d9b725 Fix AST visitor CHatingPython 2026-05-31 13:50:46 +02:00
  • 6eb689bfb9 Fix and rename branch_nz to branch_cond in furlang IR CHatingPython 2026-05-31 13:30:47 +02:00
  • b2e33e1bdd Add AST visitor CHatingPython 2026-05-31 13:12:22 +02:00
  • 2395ee9977 Forward furc ast CHatingPython 2026-05-31 13:00:33 +02:00
  • dfcbc4f23b Add IR instruction and block to furlang CHatingPython 2026-05-31 12:33:31 +02:00
  • 28656fdf90 Add IR operand to furlang CHatingPython 2026-05-31 12:12:20 +02:00
  • 82c9037a6a Add result to furlang CHatingPython 2026-05-31 11:40:39 +02:00
  • 737f637a38 Add comparison operators CHatingPython 2026-05-30 13:09:39 +02:00
  • f4efb53531 Add var assign expression CHatingPython 2026-05-30 12:50:44 +02:00
  • 8d162f926a Add var read expression CHatingPython 2026-05-29 21:40:54 +02:00
  • 1fa9e50b57 Remove the paren expression CHatingPython 2026-05-29 20:33:24 +02:00
  • b8b13d1635 Add paren expression CHatingPython 2026-05-29 20:27:02 +02:00
  • f178b09f89 Add unary expression parsing CHatingPython 2026-05-29 20:09:09 +02:00
  • 86988ffea5 Add node_handle alias suffix _h CHatingPython 2026-05-26 21:29:50 +02:00
  • f130553e20 Parse binop expressions CHatingPython 2026-05-26 21:06:37 +02:00
  • e205d67443 Introduce binop_expression_node CHatingPython 2026-05-26 14:32:12 +02:00
  • 48593a4350 Add ast::node and handle<T*, Error> comparison CHatingPython 2026-05-26 14:11:28 +02:00
  • 4a58e97812 Add git hooks CHatingPython 2026-05-26 13:14:37 +02:00
  • 7017d83204 Add default constructor to handle CHatingPython 2026-05-26 12:30:01 +02:00
  • ad84bc50bd Add integers to lexer CHatingPython 2026-05-26 08:52:35 +02:00
  • cbb2efc187 Improve AST nodes CHatingPython 2026-05-25 17:17:18 +02:00
  • 156aa224ee Use arena in parser CHatingPython 2026-05-25 15:34:05 +02:00
  • d2cfbb6763 Add arena to furlang CHatingPython 2026-05-25 14:59:42 +02:00
  • 2cf4ff90a5 Parser tests CHatingPython 2026-05-25 12:18:31 +02:00
  • 535b088f81 Add comments to lexer CHatingPython 2026-05-25 11:45:14 +02:00
  • 438288f8f1 Add gtest CHatingPython 2026-05-25 08:16:44 +02:00
  • 7df35fc075 Basic parser CHatingPython 2026-05-25 07:45:24 +02:00
  • 28f6deaba5 Basic lexer CHatingPython 2026-05-24 14:57:57 +02:00