|
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 |
|
|
437ab758be
|
ffi: migrate to jffi which will provide a path for struct support
|
2023-10-06 17:07:15 -07:00 |
|
|
0d8c6723de
|
Merge remote-tracking branch 'origin/jlf'
|
2023-10-06 16:14:30 -07:00 |
|
|
945ba85c98
|
ast: move gay.pizza.pork.ast to gay.pizza.pork.ast.gen
|
2023-10-06 15:52:34 -07:00 |
|
|
d36310e698
|
parser: switch to char matcher interface
|
2023-10-06 15:30:43 -07:00 |
|
|
97283636bc
|
idea: enhance symbol support
|
2023-09-23 18:51:02 -07:00 |
|
|
87623505c0
|
common: unused marker for marking values as unused intentionally
|
2023-09-23 16:30:00 -07:00 |
|
|
4ae1d19012
|
readme: fix missing export for main
|
2023-09-23 15:55:42 -07:00 |
|
|
a292449b6a
|
ast: fix codegen of equals to not produce warnings
|
2023-09-23 15:53:54 -07:00 |
|
|
e31566f0d6
|
ffi: migrate to java.lang.foreign and require Java 21
|
2023-09-23 15:45:01 -07:00 |
|
|
c340cfb86d
|
idea: significant enhancements to ide experience
|
2023-09-22 22:38:06 -07:00 |
|
|
83c24843a3
|
ffi: new native function format
|
2023-09-22 00:26:24 -07:00 |
|
|
f60715dfb3
|
idea: proper scoping support, completion now works
|
2023-09-21 23:07:22 -07:00 |
|
|
c92a111af7
|
idea: implement function call completion (limited)
|
2023-09-21 21:33:34 -07:00 |
|
|
d12aadf18c
|
idea: brace matching and function resolution
|
2023-09-21 21:08:20 -07:00 |
|
|
c4f65a66ca
|
parser: ensure that the parse functions are always directly called by reworking whitespace
|
2023-09-21 18:04:19 -07:00 |
|
|
4758e92676
|
evaluator: significant performance enhancements
|
2023-09-21 17:21:53 -07:00 |
|
|
1a759b9746
|
gradle: improve performance of ast codegen
|
2023-09-20 18:58:05 -07:00 |
|
|
21ff33f776
|
gradle: make ast generation faster using kaml and coroutines
|
2023-09-20 15:13:33 -07:00 |
|
|
ad5fc9bf0f
|
gradle: make build faster
|
2023-09-20 14:43:27 -07:00 |
|
|
dacec08587
|
ffi: rework for future struct support
|
2023-09-18 04:53:24 -07:00 |
|
|
7cb3e02b21
|
parser: major refinement of error handling
|
2023-09-18 01:07:28 -07:00 |
|
|
5610326eda
|
examples: simple game of life impl using SDL2 thru ffi & native java collections
|
2023-09-17 08:45:33 -07:00 |
|
|
a08526c92c
|
language: implement list indexing
|
2023-09-17 08:38:11 -07:00 |
|
|
3b101bd48a
|
global: idea generation support
|
2023-09-17 00:38:47 -07:00 |
|
|
821aa3563a
|
frontend: implement basic scope analysis
|
2023-09-17 00:38:47 -07:00 |
|
|
aadc8282a5
|
introduce impork, workload as cute import aliases (#10)
Co-authored-by: Violet White <violet.white.dammit@protonmail.com>
Co-authored-by: Violet White <violet.white@espeon.social>
|
2023-09-14 21:34:24 -07:00 |
|
|
63e7203db9
|
parser: fix bug in ide support
|
2023-09-13 19:50:23 -07:00 |
|
|
2307fdc0ed
|
parser: rewrite to be able to parse any node type on demand
|
2023-09-13 19:40:29 -07:00 |
|
a dinosaur
|
b42ca92d9f
|
evaluator: fix unary operators on floating point types always throwing a spurious error (#9)
|
2023-09-12 03:40:13 -04:00 |
|
|
a6f9a82e5e
|
language: none support
|
2023-09-12 02:03:41 -04:00 |
|