Commit Graph

71 Commits

Author SHA1 Message Date
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 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 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 e809eb82c7 fix(furvm): handle import function in function move operators 2026-06-14 23:48:43 +02:00
CHatingPython 759ccad7a6 feat(furvm): add serializer 2026-06-14 15:19:12 +02:00
CHatingPython f6f716e8c9 feat(furvm): add variables 2026-06-14 14:22:45 +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 6ca5fcc995 fix(furvm): change equals to not equals in function's position and native 2026-06-11 15:09:00 +02:00
CHatingPython ba39f5ab27 feat(furvm): add basic function 2026-06-11 14:50:51 +02:00
CHatingPython 5472b77ea0 refactor(furvm): move thing operators to thing.cpp 2026-06-11 12:18:47 +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 1e19d83d83 feat(furvm): implement duplicate instruction 2026-06-10 19:20:38 +02:00
CHatingPython 8afeabfd69 refactor(furvm): future-proofing thing ctor and dtor 2026-06-10 16:05:53 +02:00
CHatingPython a4fd939cd2 feat(furvm): add reference counting
Refs: #10
2026-06-10 15:42:45 +02:00
CHatingPython 26d77bdc02 refactor(furvm): use generational indexes for thing
Refs: #10
2026-06-10 15:42:09 +02:00
CHatingPython d86f38d166 docs: document stack underflow exception 2026-06-10 15:10:35 +02:00