77 Commits

Author SHA1 Message Date
3a8f0e84af wip -- start indexing work 2025-12-21 00:47:47 -07:00
6b18489f54 Added more optimizations in regards to function invocations and backing
up and restoring registers
2025-12-17 21:05:01 -07:00
0b354d4ec0 First pass getting loadReagent support into the compiler with optimizations 2025-12-17 17:49:34 -07:00
477c2b1aef Fixed bug where temperature literals were not being calculated correctly with negative numbers 2025-12-15 23:13:40 -07:00
b98817c8a0 Fixed tests to show new line label convention for internal labels 2025-12-14 03:23:49 -07:00
6d5c179eac Fixed stack overflow due to improper handling of leaf functions 2025-12-14 03:16:58 -07:00
b7fbc499b6 WIP fix stack overflow 2025-12-14 02:54:56 -07:00
378c7e18cd version bump 2025-12-13 00:35:31 -07:00
9de59ee3b1 Fix source maps 2025-12-12 21:48:25 -07:00
20f7cb9a4b wip 2025-12-12 17:36:57 -07:00
0be2e644e4 WIP optimization code 2025-12-12 17:23:04 -07:00
3fb04aef3b Emit IL alongside raw IC10 for use in future optimization passes 2025-12-12 15:51:36 -07:00
92f0d22805 hook up compilationResult to FFI boundry 2025-12-11 13:32:46 -07:00
811f4f4959 Keep track of source map throughout the compilation process 2025-12-11 13:03:12 -07:00
236b50c813 Allow syscalls in infix operations 2025-12-11 02:24:01 -07:00
342b1ab107 Fix function invocation stack underflow 2025-12-11 01:03:43 -07:00
0ac010ef8f Fixed documentation rendering and added ternary expressions 2025-12-10 18:00:20 -07:00
9c260ef2d5 Fixed bug where infix wouldn't rewind when encountering a comma, causing the rest of a syscall parse in an assignment expression to fail 2025-12-10 00:09:16 -07:00
0fde11a2bf Added support for syscalls with assignment expressions 2025-12-09 23:57:19 -07:00
b21d6cc73e Found bug, unable to do an assignment expression with a syscall 2025-12-09 23:45:10 -07:00
46500a456a Add support for colorized comments 2025-12-09 17:38:35 -07:00
0cddb3e8c8 The Cows are all working. Moo. 2025-12-09 16:31:24 -07:00
c3986ab4d9 VariableManager lifetime errors 2025-12-09 16:05:40 -07:00
f54214acb9 Most of all the errors are gone 2025-12-09 13:59:54 -07:00
d9a7a31306 Lifetimes are declared, now I gotta fix the lifetime issues 2025-12-09 13:51:54 -07:00
d40b759442 TEST -- use Cow instead of String for tokens 2025-12-09 13:17:35 -07:00
a50a45f0b4 More cleanup 2025-12-09 12:12:28 -07:00
c531f673a5 Remove quickerror in favor of thiserror 2025-12-09 11:32:14 -07:00
7b7c1f7d29 Logos plugged into Parser 2025-12-09 02:15:43 -07:00
72cf9ea042 wip 2025-12-09 01:43:12 -07:00
fac36c756b Lexer impl done 2025-12-08 23:19:23 -07:00
115a57128c Before error type refactor 2025-12-08 22:50:20 -07:00
6afeec6da2 First pass getting a logos tokenizer up and running 2025-12-08 21:06:42 -07:00
1b96a17698 Update ModData/About.xml, update various syscalls in Stationpedia 2025-12-07 21:15:58 -07:00
f53f2f878a Fixed bug with max() function, tested math syscalls 2025-12-06 22:46:51 -07:00
19d6679229 untested compiled Math syscalls 2025-12-06 22:28:39 -07:00
ab7b36ac22 Add support in the parser for the various Math syscalls 2025-12-06 21:49:10 -07:00
0ea58e4921 Fixed bug where negative consts were not valid slang, revised build script to build the workshop folder to the release folder. 2025-12-06 20:08:19 -07:00
d6548502cd Track spans for the variable_manager::Error enum 2025-12-06 14:12:31 -07:00
0ac5661d7f Fixed last 2 implemented syscalls 2025-12-06 02:12:16 -07:00
5d92586dba Fixed compiler bug that causes args.next to be invoked more than the 1 expected time 2025-12-06 02:09:12 -07:00
7fb153572d syscall aliases and more syscalls 2025-12-06 01:19:30 -07:00
ee8f5daece add test for constant folding with temporary variables 2025-12-05 23:39:58 -07:00
a60e9d7dce fold nested literal binary expressions 2025-12-05 23:25:23 -07:00
9993bff574 Added support for compile-time constant hash expressions 2025-12-05 21:34:51 -07:00
f2aedb96df update syntax highlighting to use vscode dark mode theme 2025-12-05 00:25:24 -07:00
b06ad778d9 Allow underscores in identifiers 2025-12-04 22:44:47 -07:00
759f798fda Fixed VariableScope so it stores const values in the var_lookup_table 2025-12-04 21:32:00 -07:00
d34ce32d97 v1 constant expressions 2025-12-04 21:18:57 -07:00
4b6c7eb63c Implement AST for 'const' expressions. TODO -- add const expressions to compiler 2025-12-04 18:01:16 -07:00