Commit Graph

186 Commits

Author SHA1 Message Date
Alex Zenla
d0e2f2a05e
fix a small bug with return values 2025-07-28 20:50:33 -07:00
Alex Zenla
3dcac2f9e6
implement support for setting indexed values 2025-07-26 17:01:24 -07:00
Alex Zenla
48e19a8068
implement support for multiple index operations 2025-07-26 16:31:12 -07:00
Alex Zenla
b451f74239
elide double returns and get rid of function end emits 2025-07-26 16:24:02 -07:00
Alex Zenla
1d664e807b
graalvm is bad and should go away 2025-07-26 16:09:55 -07:00
Alex Zenla
ce8ddb6dc1
java go byebye 2025-07-26 15:55:09 -07:00
Alex Zenla
08f9b6f2ae
code cleanup 2025-07-26 15:49:44 -07:00
Alex Zenla
a262c09219
improve debug mode 2025-07-26 15:29:00 -07:00
Alex Zenla
ff2aaabd93
add debug mode 2025-07-26 00:47:32 -07:00
Alex Zenla
8d8866c26c
fix bug with evaluator when calling varadic functions 2025-07-26 00:07:10 -07:00
Alex Zenla
60c7b2d4be
implement java native type support 2025-07-24 23:16:50 -07:00
Alex Zenla
e86b800a7d
fix serialization of IR nop 2025-07-24 22:33:54 -07:00
Alex Zenla
69230deefc
introduce ir nop to fix loop bugs 2025-07-24 22:30:18 -07:00
Alex Zenla
837e0c1b38
implement native type compilation 2025-07-20 19:57:09 -07:00
Alex Zenla
f7ff896f81
implement support for type definitions 2025-07-20 19:28:01 -07:00
Alex Zenla
5ac70d800e
implement basic type annotations (not yet used or declarable) 2025-07-20 00:52:24 -07:00
Alex Zenla
a48fac4581
rework some bits of the compiler to work more appropriately 2025-07-16 23:14:25 -07:00
Alex Zenla
17b1aa44c0
upgrade dependencies 2025-07-03 03:18:11 -07:00
Alex Zenla
d2eaffafcc
implement a new native call bytecode mechanism that can be optimized by the vm 2025-03-18 19:57:27 -07:00
Alex Zenla
10308eae5c
fix intellij plugin 2025-03-18 18:55:07 -07:00
Alex Zenla
b1c6aac335
swap to jdk 21 2025-03-16 23:57:48 -07:00
Alex Zenla
61fbb6f35f
upgrade gradle and fix plugin build 2025-03-16 23:48:04 -07:00
Alex Zenla
d31a8f41eb
fix github workflows 2025-03-16 23:37:56 -07:00
Alex Zenla
2f5ea4629d
modify compiler to fix return values and add support for vm ffi 2025-03-15 23:34:16 -07:00
Alex Zenla
4100752f1c
upgrade to java 22 and fix miscompile of variable loads 2025-03-15 21:16:48 -07:00
Alex Zenla
6e225aab88
fix game of life support in evaluator 2024-12-01 04:13:59 -05:00
Alex Zenla
4ec5624be4
upgrade everything to modern versions 2024-11-30 19:48:07 -05:00
d079244fd7
gradle: update dependencies 2023-12-27 17:57:24 -08:00
7a0b5ae88f
example: fix boolean table 2023-12-27 16:46:26 -08:00
35ce58bb44
bir: mutable values and inspection 2023-12-27 16:44:32 -08:00
962d079acc
compiler: declare symbols before store so that symbol graph works 2023-11-29 15:03:22 -08:00
3dbf8f9c4a
vm: implement local slot storage for fast lookup 2023-11-29 02:16:43 -08:00
f2ff23e9be
language: implement proper virtual machine support 2023-11-28 05:23:48 -08:00
8951c3cd60
compiler: full support for IR based compilation 2023-11-23 21:48:10 -08:00
2d88666f05
WIP on IR 2023-11-22 07:23:33 -08:00
76290a401a
bytecode: enhance symbol table with both slab and symbol name 2023-11-21 23:27:21 -08:00
6211ad4ff1
global: a working virtual machine for some of the use cases. APIs and validation still WIP. 2023-11-21 22:18:05 -08:00
0a2d029c5c
language: introduce the requirement to use return to return a value from a function 2023-11-21 04:28:46 -08:00
5540918e7c
vm: a functional virtual machine, mostly 2023-11-21 04:04:44 -08:00
4c50d48e1e
compiler: first attempt at restructuring 2023-11-15 01:20:49 -08:00
041848c14e
vm: very basic virtual machine 2023-11-14 23:44:10 -08:00
8c48c93663
language: prepare for struct support 2023-11-06 21:37:27 -08:00
e3bfa3fbfc
tokenizer: remove TokenStream, use sequences instead 2023-10-16 22:16:53 -07:00
15f5f313cc
build: move parser and tokenizer into separate modules 2023-10-16 21:52:21 -07:00
9338b01b48
parser: lazy support 2023-10-14 03:28:07 -07:00
e96bcd8754
gradle: 8.4 and parser: lazy tokenization 2023-10-13 08:56:04 -07:00
5078f38f61
pork: it's got it all, ffi, state machine tokenizer, and better IDE support 2023-10-13 01:04:35 -07:00
d355fb3914
parser: fix bad type assertions causing NoSuchMethodError 2023-10-08 18:45:59 -07:00
73a458b673
parser: various code and quality enhancements 2023-10-08 04:46:23 -07:00
fdac4fb96a
ffi: move type conversion to FfiType 2023-10-06 19:57:05 -07:00