Commit Graph

  • f182d55d05 build(deps): bump the gradle-updates group across 1 directory with 6 updates dependabot/gradle/gradle-updates-187dc2f804 dependabot[bot] 2025-08-19 07:45:09 +00:00
  • b36850b6ef build(deps): bump the actions-updates group across 1 directory with 4 updates dependabot/github_actions/actions-updates-00efb0a0aa dependabot[bot] 2025-08-12 05:22:44 +00:00
  • d0e2f2a05e fix a small bug with return values main Alex Zenla 2025-07-28 20:50:33 -07:00
  • 3dcac2f9e6 implement support for setting indexed values Alex Zenla 2025-07-26 17:01:24 -07:00
  • 48e19a8068 implement support for multiple index operations Alex Zenla 2025-07-26 16:31:12 -07:00
  • b451f74239 elide double returns and get rid of function end emits Alex Zenla 2025-07-26 16:24:02 -07:00
  • 1d664e807b graalvm is bad and should go away Alex Zenla 2025-07-26 16:09:55 -07:00
  • ce8ddb6dc1 java go byebye Alex Zenla 2025-07-26 15:55:09 -07:00
  • 08f9b6f2ae code cleanup Alex Zenla 2025-07-26 15:49:44 -07:00
  • a262c09219 improve debug mode Alex Zenla 2025-07-26 15:29:00 -07:00
  • ff2aaabd93 add debug mode Alex Zenla 2025-07-26 00:47:32 -07:00
  • 8d8866c26c fix bug with evaluator when calling varadic functions Alex Zenla 2025-07-26 00:07:10 -07:00
  • 60c7b2d4be implement java native type support Alex Zenla 2025-07-24 23:16:50 -07:00
  • e86b800a7d fix serialization of IR nop Alex Zenla 2025-07-24 22:33:54 -07:00
  • 69230deefc introduce ir nop to fix loop bugs Alex Zenla 2025-07-24 22:30:18 -07:00
  • 837e0c1b38 implement native type compilation Alex Zenla 2025-07-20 19:57:09 -07:00
  • f7ff896f81 implement support for type definitions Alex Zenla 2025-07-20 19:28:01 -07:00
  • 5ac70d800e implement basic type annotations (not yet used or declarable) Alex Zenla 2025-07-20 00:52:24 -07:00
  • a48fac4581 rework some bits of the compiler to work more appropriately Alex Zenla 2025-07-16 23:14:25 -07:00
  • 17b1aa44c0 upgrade dependencies Alex Zenla 2025-07-03 03:18:11 -07:00
  • d2eaffafcc implement a new native call bytecode mechanism that can be optimized by the vm Alex Zenla 2025-03-18 19:57:27 -07:00
  • 10308eae5c fix intellij plugin Alex Zenla 2025-03-18 18:55:07 -07:00
  • b1c6aac335 swap to jdk 21 Alex Zenla 2025-03-16 23:57:48 -07:00
  • 61fbb6f35f upgrade gradle and fix plugin build Alex Zenla 2025-03-16 23:48:04 -07:00
  • d31a8f41eb fix github workflows Alex Zenla 2025-03-16 23:37:56 -07:00
  • 2f5ea4629d modify compiler to fix return values and add support for vm ffi Alex Zenla 2025-03-15 23:34:16 -07:00
  • 4100752f1c upgrade to java 22 and fix miscompile of variable loads Alex Zenla 2025-03-15 21:16:48 -07:00
  • 6e225aab88 fix game of life support in evaluator Alex Zenla 2024-12-01 04:13:24 -05:00
  • 4ec5624be4 upgrade everything to modern versions Alex Zenla 2024-11-30 19:48:07 -05:00
  • d079244fd7 gradle: update dependencies Alex Zenla 2023-12-27 17:57:24 -08:00
  • 7a0b5ae88f example: fix boolean table Alex Zenla 2023-12-27 16:46:26 -08:00
  • 35ce58bb44 bir: mutable values and inspection Alex Zenla 2023-12-27 16:44:32 -08:00
  • 962d079acc compiler: declare symbols before store so that symbol graph works Alex Zenla 2023-11-29 15:03:22 -08:00
  • 3dbf8f9c4a vm: implement local slot storage for fast lookup Alex Zenla 2023-11-29 02:16:43 -08:00
  • f2ff23e9be language: implement proper virtual machine support Alex Zenla 2023-11-28 05:23:48 -08:00
  • 8951c3cd60 compiler: full support for IR based compilation Alex Zenla 2023-11-23 21:48:10 -08:00
  • 2692e3c991 IR WIP ir-wip Alex Zenla 2023-11-22 21:40:09 -08:00
  • 2d88666f05 WIP on IR wip-ir Alex Zenla 2023-11-22 07:23:33 -08:00
  • 76290a401a bytecode: enhance symbol table with both slab and symbol name Alex Zenla 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. Alex Zenla 2023-11-21 22:18:05 -08:00
  • 0a2d029c5c language: introduce the requirement to use return to return a value from a function Alex Zenla 2023-11-21 04:28:46 -08:00
  • 5540918e7c vm: a functional virtual machine, mostly Alex Zenla 2023-11-21 04:04:44 -08:00
  • 4c50d48e1e compiler: first attempt at restructuring Alex Zenla 2023-11-15 01:20:49 -08:00
  • 041848c14e vm: very basic virtual machine Alex Zenla 2023-11-14 23:44:10 -08:00
  • 8c48c93663 language: prepare for struct support Alex Zenla 2023-11-06 21:37:27 -08:00
  • e3bfa3fbfc tokenizer: remove TokenStream, use sequences instead Alex Zenla 2023-10-16 22:16:53 -07:00
  • 15f5f313cc build: move parser and tokenizer into separate modules Alex Zenla 2023-10-16 21:52:21 -07:00
  • 9338b01b48 parser: lazy support Alex Zenla 2023-10-14 03:28:07 -07:00
  • e96bcd8754 gradle: 8.4 and parser: lazy tokenization Alex Zenla 2023-10-13 08:56:04 -07:00
  • 5078f38f61 pork: it's got it all, ffi, state machine tokenizer, and better IDE support Alex Zenla 2023-10-13 01:04:35 -07:00
  • d355fb3914 parser: fix bad type assertions causing NoSuchMethodError Alex Zenla 2023-10-08 18:45:59 -07:00
  • 73a458b673 parser: various code and quality enhancements Alex Zenla 2023-10-08 04:46:23 -07:00
  • fdac4fb96a ffi: move type conversion to FfiType Alex Zenla 2023-10-06 19:57:05 -07:00
  • 437ab758be ffi: migrate to jffi which will provide a path for struct support Alex Zenla 2023-10-06 17:07:15 -07:00
  • 0d8c6723de Merge remote-tracking branch 'origin/jlf' Alex Zenla 2023-10-06 16:09:55 -07:00
  • 945ba85c98 ast: move gay.pizza.pork.ast to gay.pizza.pork.ast.gen Alex Zenla 2023-10-06 15:39:13 -07:00
  • d36310e698 parser: switch to char matcher interface Alex Zenla 2023-10-06 15:30:43 -07:00
  • 97283636bc idea: enhance symbol support Alex Zenla 2023-09-23 18:51:02 -07:00
  • 87623505c0 common: unused marker for marking values as unused intentionally Alex Zenla 2023-09-23 16:30:00 -07:00
  • 4ae1d19012 readme: fix missing export for main Alex Zenla 2023-09-23 15:55:42 -07:00
  • a292449b6a ast: fix codegen of equals to not produce warnings Alex Zenla 2023-09-23 15:53:54 -07:00
  • e31566f0d6 ffi: migrate to java.lang.foreign and require Java 21 jlf Alex Zenla 2023-09-23 15:40:40 -07:00
  • c340cfb86d idea: significant enhancements to ide experience Alex Zenla 2023-09-22 22:38:06 -07:00
  • 83c24843a3 ffi: new native function format Alex Zenla 2023-09-22 00:26:24 -07:00
  • f60715dfb3 idea: proper scoping support, completion now works Alex Zenla 2023-09-21 23:07:22 -07:00
  • c92a111af7 idea: implement function call completion (limited) Alex Zenla 2023-09-21 21:33:34 -07:00
  • d12aadf18c idea: brace matching and function resolution Alex Zenla 2023-09-21 21:08:20 -07:00
  • c4f65a66ca parser: ensure that the parse functions are always directly called by reworking whitespace Alex Zenla 2023-09-21 18:04:19 -07:00
  • 4758e92676 evaluator: significant performance enhancements Alex Zenla 2023-09-21 17:21:53 -07:00
  • 1a759b9746 gradle: improve performance of ast codegen Alex Zenla 2023-09-20 18:58:05 -07:00
  • 21ff33f776 gradle: make ast generation faster using kaml and coroutines Alex Zenla 2023-09-20 15:13:33 -07:00
  • ad5fc9bf0f gradle: make build faster Alex Zenla 2023-09-20 14:43:27 -07:00
  • dacec08587 ffi: rework for future struct support Alex Zenla 2023-09-18 04:53:24 -07:00
  • 7cb3e02b21 parser: major refinement of error handling Alex Zenla 2023-09-18 01:07:28 -07:00
  • 5610326eda examples: simple game of life impl using SDL2 thru ffi & native java collections a dinosaur 2023-09-17 20:53:08 +10:00
  • a08526c92c language: implement list indexing Alex Zenla 2023-09-17 08:38:11 -07:00
  • 75b505db33 examples: simple game of life impl using SDL2 thru ffi & native java collections gameofswine a dinosaur 2023-09-17 20:53:08 +10:00
  • 3b101bd48a global: idea generation support Alex Zenla 2023-09-17 00:37:58 -07:00
  • 821aa3563a frontend: implement basic scope analysis Alex Zenla 2023-09-14 14:16:08 -07:00
  • aadc8282a5 introduce impork, workload as cute import aliases (#10) Alex Zenla 2023-09-14 21:34:24 -07:00
  • 63e7203db9 parser: fix bug in ide support impork Alex Zenla 2023-09-13 19:50:23 -07:00
  • 2307fdc0ed parser: rewrite to be able to parse any node type on demand Alex Zenla 2023-09-13 19:29:23 -07:00
  • b42ca92d9f evaluator: fix unary operators on floating point types always throwing a spurious error (#9) a dinosaur 2023-09-12 17:40:13 +10:00
  • a6f9a82e5e language: none support Alex Zenla 2023-09-12 02:03:41 -04:00
  • ca111f8e4b ffi: ensure failure to find functions don't produce null pointer exceptions Alex Zenla 2023-09-12 01:40:15 -04:00
  • a9e3e8a69a ffi: don't try to use unsigned types from kotlin Alex Zenla 2023-09-12 01:22:31 -04:00
  • 260c9f437d ffi: explicit parameter type conversion Alex Zenla 2023-09-12 01:16:11 -04:00
  • 4053c5825a idea: fix pork symbol declaration Alex Zenla 2023-09-12 00:50:06 -04:00
  • f64a54fa06 parser: fix integer literals Alex Zenla 2023-09-12 00:46:09 -04:00
  • 1b363dcf56 parser: implement long literal and handle overflow Alex Zenla 2023-09-12 00:25:13 -04:00
  • 7aa9d95221 idea: implement psi parser and the start of symbol declarations Alex Zenla 2023-09-11 22:43:34 -04:00
  • b64c7fb259 parser: use ast user data to store attribution Alex Zenla 2023-09-11 20:13:15 -04:00
  • a07e0fe672 language: add boolean and/or operators, change negation syntax (#7) a dinosaur 2023-09-12 04:02:58 +10:00
  • 0aab45094a language: implement for in Alex Zenla 2023-09-11 05:34:09 -04:00
  • 9ba150bb69 language: add binary operators (#6) a dinosaur 2023-09-11 19:24:08 +10:00
  • d8c0ef43c1 parser: cleanup code for fixing comma bug Alex Zenla 2023-09-11 05:20:08 -04:00
  • dbe4e7d5a5 parser: fix bug where comma was not required in function call Alex Zenla 2023-09-11 05:17:55 -04:00
  • 24d2ff5743 parser: fix parsing of modifiers for let definitions Alex Zenla 2023-09-11 05:03:12 -04:00
  • 8f60039d6e language: implement let definitions Alex Zenla 2023-09-11 04:57:13 -04:00
  • 5d53381b82 ffi: include jni and resource configs for graal Alex Zenla 2023-09-11 03:18:35 -04:00