Commit Graph

375 Commits

Author SHA1 Message Date
462f67c6aa asm: implement import and instruction parsing 2024-12-14 20:26:04 +00:00
724f40f19f frontend: add stub disassemble command 2024-12-13 18:08:53 +00:00
fa40086f0a build: treat warnings as errors 2024-12-13 17:21:25 +00:00
9c125fe905 common: fix all compiler warnings 2024-12-13 17:21:14 +00:00
9af971c074 asm: fix all compiler warnings 2024-12-13 17:20:58 +00:00
b3a9943fe5 frontend: fix all compiler warnings 2024-12-13 17:20:45 +00:00
97aaffd166 doc: update assembly language syntax 2024-12-13 12:26:53 +00:00
3bb94aa36e frontend: assemble: convert input file to output assembly 2024-12-13 12:26:32 +00:00
5fe1a21978 asm: implement an asm parser and emitter 2024-12-13 12:26:01 +00:00
0a8d913fdd common: implement ident and selector manipulation 2024-12-13 12:25:40 +00:00
24d443b818 frontend: assemble: add assembler test 2024-12-10 22:27:34 +00:00
9da6a5807a asm: implement assembler output file writing 2024-12-10 22:27:26 +00:00
06e12e4545 asm: improve alignment of on-disk structures 2024-12-10 13:19:21 +00:00
99cbcbaeb4 doc: explicitly store all identifiers/selector in an assembly source file in the const pool 2024-12-09 20:38:36 +00:00
26ed9fee04 asm: define on-disk data structures for assembly files 2024-12-09 20:38:01 +00:00
51fe7a0a71 asm: add different assembler scope types 2024-12-09 20:37:42 +00:00
8f3a035636 vim: add some missing instruction mnemonics to syntax highlighter 2024-12-09 13:30:08 +00:00
7845afcf38 asm: add interfaces for a low-level bytecode assembler 2024-12-09 13:29:44 +00:00
52f11023c8 common: add instruction and opcode definitions; interface for manipulating selectors 2024-12-09 13:28:58 +00:00
89bc63727f doc: remove outdated documentation from sample file 2024-12-08 19:37:50 +00:00
3060bb1206 doc: add subscript, pkg-access, and tuple expressions to sample file 2024-12-08 19:37:33 +00:00
8b8a97c9a6 lang: ast: implement parsing of subscript operator 2024-12-08 17:08:29 +00:00
753afd7d87 lang: ast: implement parsing of tuples 2024-12-08 12:28:47 +00:00
c6f1439835 doc: add dynamic package with keyword-message filter to sample file 2024-12-07 21:47:21 +00:00
1c3bb98714 lang: ast: rename IVY_AST_STATIC_PKG_ITEM to IVY_AST_PKG_ITEM 2024-12-07 21:46:24 +00:00
e8c30b65b5 lang: ast: implement support for multiple expression terminator tokens 2024-12-07 21:28:25 +00:00
7e3322e2ad doc: add package initialiser expressions to sample file 2024-12-07 20:57:08 +00:00
209c47da68 lang: ast: implement parsing of static and dynamic package initialisers 2024-12-07 20:56:57 +00:00
b87d152f07 meta: add metadata to win32 exe/dll files 2024-12-07 19:32:35 +00:00
77885036c1 doc: add lambdas to sample file 2024-12-07 11:17:01 +00:00
d404e21b33 lang: ast: implement parsing of unnamed parameters 2024-12-07 10:07:20 +00:00
504fea6d9e lang: ast: fix expr type not being set when parsing a lambda 2024-12-06 22:46:24 +00:00
dba4f123d6 lang: ast: implement parsing of lambdas 2024-12-06 22:26:06 +00:00
68ad0655aa lang: ast: fix selector to_string not including keyword message labels 2024-12-06 22:25:33 +00:00
dc55cfa1f8 lang: ast: propagate block terminator token to child expressions 2024-12-06 22:24:48 +00:00
54c6fd7040 lang: ast: adjust and clarify the precedence of token parser callbacks 2024-12-06 22:24:08 +00:00
4c36615bc1 lang: ast: implement s_terminator in block parser for all symbols 2024-12-06 21:34:26 +00:00
67bfdef18a lang: ast: misc formatting and reference fixes 2024-12-06 21:33:53 +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
bd5e524241 lang: ast: replace ast node print callback with to_string 2024-12-06 20:24:08 +00:00
ae15f228d3 lang: ast: fix finalise_property not being called when parsing a right paren 2024-12-06 20:23:46 +00:00
41ef94bf3d lang: ast: fix incorrect property parser state struct name 2024-12-06 20:23:23 +00:00
4e301a3e90 doc: add properties to sample file 2024-12-06 19:51:01 +00:00
6b9bd4771d doc: full properties now always have a pipe symbol after their identifier 2024-12-06 19:49:21 +00:00
ec05379e33 cmake: add support for static build 2024-12-06 19:48:20 +00:00
1f7319458e lang: ast: implement parsing of properties 2024-12-06 19:47:27 +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
4cfb1e56ea doc: a heck-ton more expressions for the sample file :) 2024-12-06 13:47:21 +00:00
94c10dfbb2 lang: ast: implement parsing of f-strings 2024-12-06 13:46:58 +00:00