CHatingPython
3d461048cc
feat: introduce reference thing type
...
Closes : #32
2026-07-01 16:56:57 +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
5a1b7c5aa6
refactor(furvm): expose context thing allocator
...
Refs: #12
2026-06-19 14:15:05 +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
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
874d1f14cb
refactor(furvm): use an arena allocator for thing data
...
Refs: #10
2026-06-10 15:09:35 +02:00
CHatingPython
48c6da1134
feat(furvm): add stack underflow exception
2026-06-07 12:02:36 +02:00
CHatingPython
464b24eeed
feat(furvm): implement return value instruction
2026-06-07 11:43:38 +02:00
CHatingPython
e7e5f36380
feat(furvm): add step function to executor
2026-06-07 10:58:51 +02:00
CHatingPython
bfdbbb0d5f
refactor(furvm): better thing implementation
2026-06-06 23:16:59 +02:00
CHatingPython
daf16c18e1
refactor(furvm): add shared pointer aliases
2026-06-06 23:08:20 +02:00
CHatingPython
6824015728
refactor(furvm): implement thing constructor
2026-06-06 23:05:34 +02:00
CHatingPython
a077457636
feat(furvm): add a thing
2026-06-06 22:52:25 +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