Commit Graph

48 Commits

Author SHA1 Message Date
635d23d2e1 frontend: update codegen usage to only use pre-order ast traversal 2025-04-16 21:59:32 +01:00
abebdb595a frontend: add IR generation to compile command 2025-04-15 11:00:48 +01:00
4587416ac9 frontend: repl: generate ir from input 2025-04-14 20:15:41 +01:00
bcc0daa2d5 frontend: update ast iterator api usage 2025-04-14 12:25:49 +01:00
f123902215 frontend: add parameters to print_ast_node iterator function
the caller can now specify whether the nodes should be printed
in pre-order or post-order, and whether the output should be indented.
2025-04-14 12:24:56 +01:00
c682cbb15a frontend: update ast traversal api usage 2025-04-14 09:46:36 +01:00
251ed8c144 frontend: add coloured output for try-catch-finally AST nodes 2025-01-16 13:18:19 +00:00
d50417c4b7 frontend: add command to disassemble object files 2025-01-15 17:40:01 +00:00
bc8bfcea9d meta: add missing exe resource files 2024-12-16 20:57:30 +00:00
724f40f19f frontend: add stub disassemble command 2024-12-13 18:08:53 +00:00
b3a9943fe5 frontend: fix all compiler warnings 2024-12-13 17:20:45 +00:00
3bb94aa36e frontend: assemble: convert input file to output assembly 2024-12-13 12:26:32 +00:00
24d443b818 frontend: assemble: add assembler test 2024-12-10 22:27:34 +00:00
b87d152f07 meta: add metadata to win32 exe/dll files 2024-12-07 19:32:35 +00:00
bd377b00f4 frontend: repl: add show-lex and show-ast command options 2024-12-06 20:24:50 +00:00
175e191aa6 frontend: debug: replace custom ast node printer with ast_node_to_string 2024-12-06 20:24:33 +00:00
ec05379e33 cmake: add support for static build 2024-12-06 19:48:20 +00:00
603c6709fb frontend: add debug-print support for ATOM and STRING nodes; add colour to several node types 2024-12-06 13:48:08 +00:00
363b13534d frontend: compile: replace verbose option with dedicated logging options 2024-12-06 13:21:55 +00:00
8ef057360e frontend: compile: add verbose command option 2024-12-05 21:06:03 +00:00
5af47ce443 frontend: add colours to conditional AST tree debug output 2024-12-04 16:35:41 +00:00
bb34e46c69 frontend: implement an ast node printer 2024-12-01 13:19:48 +00:00
9df8474515 frontend: always print lex tokens when compiling file or repl input 2024-11-27 22:30:42 +00:00
886c0b49a4 frontend: compile: parse source files 2024-11-26 13:10:36 +00:00
25e65f2107 frontend: repl: combine repl_full and repl_lex_only 2024-11-26 13:09:57 +00:00
8eb7eff274 frontend: repl: print ast once all tokens in the lex buffer have been consumed 2024-11-25 16:51:29 +00:00
6fa1524766 frontend: repl: print the ast after each line of input 2024-11-24 20:50:32 +00:00
5622073252 frontend: repl: print and destroy ast nodes after parsing 2024-11-24 16:12:49 +00:00
e71f6a0904 frontend: repl: pass user input through the parser 2024-11-23 19:28:26 +00:00
17ee2b6b57 frontend: switch to new bluelib tty interface 2024-11-20 22:14:35 +00:00
8df4592a6b frontend: assemble: lex assembly file contents 2024-11-19 22:09:54 +00:00
adf4e38578 frontend: implement function for printing assembly lex tokens 2024-11-19 22:09:32 +00:00
335e360b2d frontend: implement printing integer and double lex tokens 2024-11-19 16:57:39 +00:00
ea3c01204b frontend: repl: remove line continuations from input produced by line-ed 2024-11-19 15:59:05 +00:00
b62c048498 frontend: line-ed: fix control characters (\n, \r, etc) being mishandled on win32 2024-11-19 15:58:25 +00:00
7eab36aa5f frontend: add command for internal debugging functionality 2024-11-19 15:22:58 +00:00
eda7a1f951 frontend: line-ed: add missing tty function implementations for linux & darwin 2024-11-19 13:00:11 +00:00
4d411c67f0 frontend: line-ed: add missing wchar includes 2024-11-19 12:59:52 +00:00
c5f60c285e frontend: line-ed: convert all escape code usage to s_tty calls 2024-11-18 21:13:28 +00:00
96172eac84 frontend: line-ed: move platform-specific code to separate directory 2024-11-18 15:15:04 +00:00
29447bf5ec frontend: split interactive and non-interactive modes into separate commands 2024-11-18 09:55:02 +00:00
d5c86c4eea frontend: move token printing code to a separate file 2024-11-18 09:54:27 +00:00
4fc1a6ade8 frontend: add a line editor for shell input 2024-11-18 09:53:55 +00:00
c9661af81e frontend: compile: print number and atom token info 2024-11-17 09:32:26 +00:00
f55b8f4851 frontend: compile: use new opaque lexer interface 2024-11-16 23:05:07 +00:00
412e9abf05 frontend: compile: add colour-coding to token list 2024-11-16 23:03:16 +00:00
6e5db6a3e2 frontend: compile: print lex token details as they are read 2024-11-16 17:06:02 +00:00
06bf9a3030 meta: rename frontend source directory 2024-11-13 21:38:55 +00:00