Commit Graph

194 Commits

Author SHA1 Message Date
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 8466902281 feat(IR): improve IR functions
Add access specifiers and parameter counts to furlang's IR functions.
2026-06-28 13:21:13 +02:00
CHatingPython 7b609f87c9 feat(furc): introduce function call expression and call instruction 2026-06-28 13:21:13 +02:00
CHatingPython 0bcbe1d7d1 feat(furc): add access specifiers to functions
Introduce public and private access specifiers to functions.

Closes: #26
2026-06-28 13:21:05 +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 079f6326a4 Merge pull request 'furc' (#24) from furc into master
Reviewed-on: #24
2026-06-24 16:29:25 +00:00
CHatingPython d8d81851d3 feat(furc): introduce native and import functions
Closes: #19
2026-06-24 18:26:01 +02:00
CHatingPython abeb5b390b feat(furc): introduce function declaration parameters
Closes: #16
2026-06-24 18:06:40 +02:00
CHatingPython a61f5c194b refactor(furc): improve function declarations
Refs: #16
2026-06-24 15:52:14 +02:00
CHatingPython d497e2de45 feat: introduce arrow tokens
Refs: #16
2026-06-24 15:50:37 +02:00
CHatingPython 1965ab26af Merge pull request 'Types for furc' (#22) from furc-types into master
Reviewed-on: #22
Closes: #15
2026-06-24 13:32:30 +00:00
CHatingPython 70b7b6a2f4 feat: introduce parse type function
Refs: #15
2026-06-24 15:30:45 +02:00
CHatingPython b5dcd6690a feat: introduce AST type class
Refs: #15
2026-06-24 15:30:28 +02:00
CHatingPython 0baf896c3a feat: introduce int32 keyword
Refs: #15
2026-06-24 15:27:29 +02:00
CHatingPython 318b3e8a65 Merge pull request 'Furvm backend for furc' (#18) from furvm-gen into master
Reviewed-on: #18
2026-06-24 12:58:16 +00:00
CHatingPython 7d2e748c27 feat(furc): introduce furvm backend to furc
Closes: #14
2026-06-24 14:56:49 +02:00
CHatingPython e485a7900b feat(furvm): introduce handle dispatch function 2026-06-24 14:53:50 +02:00
CHatingPython 68e1f8fda0 Merge branch 'great-refactor' into master
Closes #12
2026-06-24 04:54:30 +02:00
CHatingPython 8909a0cfff refactor(furc): bring back ADCE to post process
Refs: #12
2026-06-23 15:21:12 +02:00
CHatingPython dad2c180d6 refactor(furc): bring back SCCP to post process
Refs: #12
2026-06-23 15:15:01 +02:00
CHatingPython 4478a839b7 refactor(furc): improve the SSA optimization class
Improve and rename the SSA optimization class to post process.

Refs: #12
2026-06-23 14:54:28 +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 190aa8f985 refactor(furc): move arena allocator out of the parser
Refs: #12
2026-06-20 11:56:15 +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 6f023765b5 chore: clang-tidy 2026-06-19 15:13:56 +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