Commit Graph

81 Commits

Author SHA1 Message Date
CHatingPython 81a439b2ad refactor: add size argument to array type
Closes: #43
2026-07-05 23:15:40 +02:00
CHatingPython b913fc0c8b refactor: rename list to array
Closes: #42
2026-07-05 22:41:53 +02:00
CHatingPython ee9eadeea8 feat: introduce sizeof instruction
Closes: #34
2026-07-05 22:33:15 +02:00
CHatingPython 642d57622a feat: introduce pointerof operation
Introduce pointerof operation and do some side-quests along the way.

Refs: #34
Closes: #17
2026-07-05 14:54:16 +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 100c542fe1 refactor: serialize types in module
Refs: #23
2026-07-04 16:15:40 +02:00
CHatingPython cf284592fd fix: fix handle's copy constructors 2026-07-04 16:14:46 +02:00
CHatingPython f5ebc767ab fix: fix module's function serialization
Refs: #23
2026-07-04 13:20:08 +02:00
CHatingPython 484e16963f refactor: move thing allocator to a separate file
Closes: #44
2026-07-03 19:51:09 +02:00
CHatingPython 575054b75a feat: introduce import type
Closes: #39
2026-07-03 19:43:18 +02:00
CHatingPython a7ab214ce3 refactor: make context inherit module handle container
Refs: #39
2026-07-03 19:41:28 +02:00
CHatingPython e087c11008 feat: add types to module
Refs: #39
2026-07-03 19:41:27 +02:00
CHatingPython 2164ab0d97 refactor: move type to separate file 2026-07-03 19:41:10 +02:00
CHatingPython 11b05b8c18 fix: fix handle class
Fix handle class for headers without reference counting.
2026-07-03 18:42:06 +02:00
CHatingPython 6ec4710eaa feat: introduce reference instruction 2026-07-01 21:58:33 +02:00
CHatingPython 09252c3ec3 feat: introduce list type
Closes: #33
2026-07-01 21:39:59 +02:00
CHatingPython 3d461048cc feat: introduce reference thing type
Closes: #32
2026-07-01 16:56:57 +02:00
CHatingPython 482ab859ed refactor: rename thing_type to type
Rename thing_type to type and use shared pointer instead of value in
thing.
2026-07-01 16:25:46 +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 55932f6113 feat(furvm): add iterator functions to handle container 2026-06-28 12:36:31 +02:00
CHatingPython a3db4ef1e1 feat(furvm): add type function to thing 2026-06-28 12:35:46 +02:00
CHatingPython e485a7900b feat(furvm): introduce handle dispatch function 2026-06-24 14:53:50 +02:00
CHatingPython 9549a7b61a docs(furvm): document the thing
Refs: #12
2026-06-21 20:40:31 +02:00
CHatingPython 51483db283 docs(furvm): document the function
Refs: #12
2026-06-21 20:17:07 +02:00
CHatingPython 3759c0361f docs(furvm): document the handle 2026-06-21 20:08:41 +02:00
CHatingPython 1ead2f6592 docs(furvm): document the function
Refs: #12
2026-06-21 19:45:59 +02:00
CHatingPython b6d3387388 docs(furvm): document the executor
Refs: #12
2026-06-21 19:40:33 +02:00
CHatingPython f2294079a0 docs(furvm): document the context
Refs: #12
2026-06-20 12:42:42 +02:00
CHatingPython 39f873a984 docs(furvm): document detail folder
Refs: #12
2026-06-20 12:26:53 +02:00
CHatingPython d46aa45c1f feat(furvm): add on release callback to refcount handles
Refs: #12
2026-06-20 12:19:53 +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 65e5fdf324 refactor(furvm): move bad access exceptions to exceptions.hpp
Refs: #12
2026-06-19 14:26:09 +02:00
CHatingPython 5a1b7c5aa6 refactor(furvm): expose context thing allocator
Refs: #12
2026-06-19 14:15:05 +02:00
CHatingPython f14f3854e2 fix(furvm): fix thing allocator
Refs: #12
2026-06-19 11:55:30 +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 e9b38e95a2 refactor(furvm): integrate handle system into things
Sloppy af

Refs: #12
2026-06-17 20:19:53 +02:00
CHatingPython 00bcc0e6a5 refactor(furvm): use the handle system
Refs: #12
2026-06-17 13:59:54 +02:00
CHatingPython e8ccaa6390 feat(furvm): implement a handle
Refs: #12
2026-06-16 16:55:43 +02:00
CHatingPython c2b32c9604 refactor(furvm): rename handle suffixes to ids
Refs: #12
2026-06-16 16:21:49 +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 8dfc880c07 feat(furvm): introduce comparison operators 2026-06-15 00:06:50 +02:00
CHatingPython eec25e3aea feat(furvm): introduce jump and jump not zero instructions 2026-06-14 23:49:29 +02:00
CHatingPython 759ccad7a6 feat(furvm): add serializer 2026-06-14 15:19:12 +02:00