Commit Graph

44 Commits

Author SHA1 Message Date
CHatingPython ff3fce53f5 feat: add return type to function
Closes: #51
2026-07-13 17:28:22 +02:00
CHatingPython 9b280fab22 refactor(furvm): improve references
Closes: #53
2026-07-12 00:03:39 +02:00
CHatingPython e1b75ccc8e feat(furvm): introduce length of operator
Closes: #54
2026-07-11 23:17:59 +02:00
CHatingPython cd715ae779 feat(furvm): introduce pointer type
Closes: #35
2026-07-11 22:44:18 +02:00
CHatingPython 8d3859ce70 refactor(furvm): improve primitive types
Improve primitive types and binary operations.

Closes: #55
2026-07-11 02:28:23 +02:00
CHatingPython 3c0588e8db refactor(furvm): improve type system
Closes: #52
2026-07-11 00:45:09 +02:00
CHatingPython d49b4f5bc7 refactor: improve functions
Closes: #49
2026-07-08 00:19:37 +02:00
CHatingPython 7de645d323 refactor: replace type_p with type_ref in thing
Damn, this was such a great call.

Closes: #46
2026-07-07 19:29:30 +02:00
CHatingPython 2519560451 refactor: remove name from function
Closes: #47
2026-07-06 22:06:53 +02:00
CHatingPython 7c74850aff feat: introduce array and get instruction 2026-07-06 10:53:48 +02:00
CHatingPython f89f643870 feat: implement module loading
I couldn't care less to commit all the changes separately after fight
with this stupid codebase.
Also I am closing the issue since serializing contexts meant doing
something like jars which I don't want to do right now. I'll reopen the
issue though for sure clueless.

Closes: #23
2026-07-04 18:41:06 +02:00
CHatingPython a7ab214ce3 refactor: make context inherit module handle container
Refs: #39
2026-07-03 19:41:28 +02:00
CHatingPython 6ec4710eaa feat: introduce reference instruction 2026-07-01 21:58:33 +02:00
CHatingPython 42f020977e feat: introduce more integer thing types
Closes: #31
2026-06-29 20:43:00 +02:00
CHatingPython 6ab9254746 refactor: improve thing types
Change thing_t enumeration to thing_type structure.

Closes: #30
2026-06-29 20:36:42 +02:00
CHatingPython 8702298cd2 refactor(furvm): improve functions
Define native functions inside the module instead of the function
itself (native functions hold only the key to the definition), introduce
private functions, add parameter count to function and fix some bugs.

Closes: #20
Closes: #25
2026-06-28 12:37:36 +02:00
CHatingPython 3a2fa32ce1 fix!: remove references to context::collect
I forgor to do that earlier lol

Refs: #12
2026-06-20 12:56:43 +02:00
CHatingPython f80abd68ad refactor(furvm): introduce a furvm.hpp header
Refs: #12
2026-06-20 11:32:01 +02:00
CHatingPython 99666495e7 refactor(furvm): improve serialization
Refs: #12
2026-06-19 15:14:25 +02:00
CHatingPython 6fbdb2299b refactor(furvm): refactor import function
Refs: #12
2026-06-19 11:36:20 +02:00
CHatingPython ec2c81fc56 refactor(furvm): improve the handle system
Absolute slop

Refs: #12
2026-06-18 23:58:37 +02:00
CHatingPython 00bcc0e6a5 refactor(furvm): use the handle system
Refs: #12
2026-06-17 13:59:54 +02:00
CHatingPython c9f714642c refactor(furvm): refactor thing
A pretty sloppy thing class refactor.

Refs: #12
2026-06-16 14:59:29 +02:00
CHatingPython 0dfa8c1c02 refactor(furvm): refactor executor
Refs: #12
2026-06-16 14:45:36 +02:00
CHatingPython 78acfb6ee2 refactor(furvm): refactor function
Refs: #12
2026-06-16 12:48:16 +02:00
CHatingPython 43dac1ec6d refactor(furvm): refactor mod
Refs: #12
2026-06-16 12:05:55 +02:00
CHatingPython 759ccad7a6 feat(furvm): add serializer 2026-06-14 15:19:12 +02:00
CHatingPython f0fe6b4179 feat(furvm): add import function 2026-06-12 09:03:46 +02:00
CHatingPython 3f6d0adef6 feat(furvm): add call instruction 2026-06-11 15:09:30 +02:00
CHatingPython ba39f5ab27 feat(furvm): add basic function 2026-06-11 14:50:51 +02:00
CHatingPython 9021ae0089 feat(furvm): add collect function to context 2026-06-10 20:35:05 +02:00
CHatingPython 4d935ef75f feat(furvm): add operation instructions 2026-06-10 20:02:31 +02:00
CHatingPython 0534359503 feat(furvm): add clone function to thing
Closes #9
2026-06-10 19:32:07 +02:00
CHatingPython 48c6da1134 feat(furvm): add stack underflow exception 2026-06-07 12:02:36 +02:00
CHatingPython e7e5f36380 feat(furvm): add step function to executor 2026-06-07 10:58:51 +02:00
CHatingPython 5ace40b6aa refactor(furvm): change unique pointer to shared pointer for module 2026-06-06 22:51:44 +02:00
CHatingPython a869f71f3a feat(furvm): introduce executor 2026-06-06 21:05:17 +02:00
CHatingPython 16b6b9549c feat(furvm): add push byte as int instruction 2026-06-06 17:49:49 +02:00
CHatingPython c6ec18aeb8 feat(furvm): add return instructions 2026-06-06 17:43:35 +02:00
CHatingPython 4895489511 refactor(furvm): add id to module 2026-06-06 12:53:31 +02:00
CHatingPython 0304911516 refactor: add bytecode to module 2026-06-05 18:16:54 +02:00
CHatingPython 66fdd1dc9c feat(furvm): introduce module, instruction and constant 2026-06-05 17:55:40 +02:00
CHatingPython 2f9328d85a feat(furvm): introduce context 2026-06-05 12:17:00 +02:00
CHatingPython 4a3ce6040c chore: init furvm 2026-06-04 11:06:31 +02:00