Commit Graph

165 Commits

Author SHA1 Message Date
kayomn 08a63489b0 Add if / else 2023-08-24 23:45:29 +01:00
kayomn bb1e689c5a Add while loops
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2023-08-22 23:49:23 +01:00
kayomn eca2cfffb8 Fix off-by-one if statement jump error
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2023-08-21 23:51:49 +01:00
kayomn 56d9899ac2 Work around miscompilation 2023-08-21 12:27:02 +01:00
kayomn 0d6e5250c7 Refactor Kym AST
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2023-08-20 22:25:38 +01:00
kayomn 2d016dc085 Implement if statements in AST and jumps in the VM
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2023-08-20 17:41:57 +01:00
kayomn d53bf188cf Implement vector swizzling in Kym
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2023-08-20 02:35:53 +01:00
kayomn af7483db13 Remove dead code changes
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2023-08-13 14:38:21 +01:00
kayomn 016165b6a6 Replace dedicated vector literal syntax builtins
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2023-08-13 14:27:03 +01:00
kayomn 0fbdc001d4 Add parser support for vector literals
continuous-integration/drone/push Build is passing Details
2023-08-13 13:54:31 +01:00
kayomn 919d32e714 Add vector primitive object to Kym 2023-08-13 02:03:43 +01:00
kayomn 8e42aa57fd Move builtin decoding responsibility to compiler
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2023-08-13 01:34:32 +01:00
kayomn 9a0a594345 Make Kym env options optional 2023-08-13 01:27:13 +01:00
kayomn 429f7a52ad Replace system objects with builtins and syscalls
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2023-08-13 01:14:08 +01:00
kayomn 66df9e3a1e Add support for subscript operations on objects
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2023-08-12 15:10:46 +01:00
kayomn 6c0e3477c2 Separate get-extension functions from Kym env. 2023-08-12 14:53:27 +01:00
kayomn 931d1fe6ed Add parser support for keys and indices 2023-08-12 14:51:47 +01:00
kayomn b012e1e5f6 Re-implement native function binding / calling
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2023-08-12 14:11:19 +01:00
kayomn bc3b9051dd Integrate Kym table directly into Kym VM code
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2023-08-12 13:14:00 +01:00
kayomn 1f9df3fc1d Refactor and clean up virtual machine 2023-08-12 12:57:50 +01:00
kayomn 1f8f3fd9dc Consolidate syscalls and calls into new expressions tree
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2023-07-31 02:29:50 +01:00
kayomn 4ee0bcab67 Fix incorrect stack popping order in set_dynamic opcode 2023-07-31 00:30:44 +01:00
kayomn 9435348877 Apply workaround for Zig struct re-assign miscompilation 2023-07-31 00:12:16 +01:00
kayomn 3173dd52fe Consolidate variable operations into expressions 2023-07-30 23:18:43 +01:00
kayomn b6f7ab1edb Add support for field get access of objects
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2023-07-30 14:34:19 +01:00
kayomn a62588dfe4 Fix compilation error in speed and size-optimized release builds 2023-07-30 14:33:41 +01:00
kayomn 8cb0f007d5 Fix compilation errors
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2023-07-29 16:04:27 +01:00
kayomn 0141c9c2ed Partially complete work on table overhaul
continuous-integration/drone/push Build is passing Details
2023-07-23 03:12:45 +01:00
kayomn 894dabb2c4 Fix leak detector message formatting 2023-07-22 15:20:31 +01:00
kayomn 51732a9bf5 Change KYM tokenizer to be internal AST.
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2023-07-22 15:06:39 +01:00
kayomn 62a318e69b Fix comments not being properly tokenized
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2023-07-22 14:56:57 +01:00
kayomn 7c71e0528f Add line delimiter between error messages and traces 2023-07-22 14:46:35 +01:00
kayomn b311c73c43 Add syntax error reporting
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2023-07-22 14:44:33 +01:00
kayomn a320a795bc Amend code review issues
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2023-07-22 13:57:39 +01:00
kayomn 8137f2b474 Fix memory leaks
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2023-07-22 12:36:47 +01:00
kayomn 7b4b827dc2 Refactor Kym runtime API 2023-07-22 11:03:23 +01:00
kayomn 1ea115b277 Replace globals with native call interface
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2023-07-21 23:03:25 +01:00
kayomn 84e5236ba1 Add global function calling syntax support 2023-07-19 12:19:56 +01:00
kayomn 1828eb3b45 Refactor Kym runtime values to be objects
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2023-07-18 23:52:56 +01:00
kayomn 440d63447f Hotfix parser and runtime bugs
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2023-07-14 20:00:11 +01:00
kayomn dc674ae2c3 Add local variables to Kym
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2023-07-12 01:51:32 +01:00
kayomn 48f7f97893 Fix default string hashing mechanism 2023-07-12 01:50:18 +01:00
kayomn 7b266fde58 Fix tests failing to trigger in CI
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2023-07-10 23:44:27 +01:00
kayomn 2218bc5c77 Add foundations of stack trace printing 2023-07-10 23:38:03 +01:00
kayomn 8d361634d7 Tidy up Kym API 2023-07-10 23:06:04 +01:00
kayomn ed585278ff Tidy up allocator type erasing bind function 2023-07-10 22:25:21 +01:00
kayomn c1f174a513 Get rid of extraneous and unused code
continuous-integration/drone/pr Build is failing Details
continuous-integration/drone/push Build is failing Details
2023-07-10 01:10:56 +01:00
kayomn 7604594630 Work in progress changes
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2023-06-22 23:46:48 +01:00
kayomn bf0ff03b49 Add stubs for chunk executor to be implemented in
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2023-06-04 14:45:06 +00:00
kayomn 3794259949 Amend code review comments
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2023-06-04 14:06:28 +00:00