Commit Graph

302 Commits

Author SHA1 Message Date
CHatingPython f9b910ae13 feat(furlang): add view
Add a basic view (span from C++20).
2026-08-11 16:15:48 +02:00
CHatingPython 7a7a1ec64c feat(furvm): improve instruction abstraction
Add reading and writing to instruction abstraction.
2026-08-11 13:56:34 +02:00
CHatingPython 99dba99db2 refactor(furvm): change instruction definition
Improve instruction definition for instruction abstraction.
2026-08-11 13:36:47 +02:00
CHatingPython cc88d6b6a0 refactor(furc): move IR to middle-end 2026-08-10 19:57:56 +02:00
CHatingPython 0e916c314a feat(furc/IR): move IR from furlang to furc
First try baby, whoo!
2026-08-10 18:34:10 +02:00
CHatingPython b9d50c62af feat(furc/ast): add visitor pattern for AST 2026-08-10 16:44:06 +02:00
CHatingPython 4b9f58b34f feat(furc/parser): add function calls 2026-08-09 18:34:53 +02:00
CHatingPython a420ebf69f refactor(furc/parser): improve statement parsing 2026-08-09 18:34:25 +02:00
CHatingPython e1ffa8a11d refactor(furc/lexer): improve token peeking 2026-08-09 18:32:40 +02:00
CHatingPython 2126b03069 feat(furc/parser): add if expression 2026-08-09 17:26:21 +02:00
CHatingPython 47e8b1bf51 feat(furc/parser): add pre- and post- conditions 2026-08-09 17:17:47 +02:00
CHatingPython 7ebc27cab9 feat(furc/parser): add while statement 2026-08-08 00:07:38 +02:00
CHatingPython 1db13b4e10 feat(furc/parser): add return statement 2026-08-08 00:07:23 +02:00
CHatingPython 84c6795ff8 feat(furc/parser): add if statement 2026-08-08 00:04:04 +02:00
CHatingPython 212b1e2384 feat(furc/parser): add variable and group expressions 2026-08-08 00:03:19 +02:00
CHatingPython ecdf6944a7 feat(furc/lexer): add integers 2026-08-07 11:59:45 +02:00
CHatingPython 79b6b9742d feat(furc/parser): parse binary and unary ops 2026-08-07 11:24:52 +02:00
CHatingPython 2d40b9337c feat(furc/AST): add binary and unary operations 2026-08-07 11:23:16 +02:00
CHatingPython db485af7f6 feat(furc): implement a basic parser 2026-08-06 10:54:54 +02:00
CHatingPython 854343a5a3 refactor(furc/lexer): distinguish keywords 2026-08-06 10:52:30 +02:00
CHatingPython 3faafe371f feat(furc): implement lexer 2026-08-05 12:35:49 +02:00
CHatingPython 4604f5186e feat(furc): introduce token 2026-08-05 11:03:43 +02:00
CHatingPython 224468446d refactor: remove furc for later remake 2026-08-04 13:09:46 +02:00
CHatingPython 549af109b9 fix: fix this mess
I am stupid
I am stupid
I am stupid
I can't believe how f- ricking stupid I am
2026-07-19 22:04:50 +02:00
CHatingPython 6dce7016ce test(furvm): introduce an add things test 2026-07-19 21:53:37 +02:00
CHatingPython a1e43576cc this code is a mess and I am losing my mind
This commit does not work and I am so down I don't even bother
committing to conventional commits until I fix this mess.
2026-07-19 21:38:00 +02:00
CHatingPython 9f950e45e7 feat(furas): introduce basic generator
Closes: #56
2026-07-17 20:43:34 +02:00
CHatingPython dfaa3081cb fix: use thing::true_type and fix module serialization 2026-07-17 20:41:27 +02:00
CHatingPython 46e92deed5 feat(furvm): introduce missing push instructions
Closes: #58
2026-07-14 12:55:34 +02:00
CHatingPython 42e71080a2 feat(furvm): introduce set instruction
Closes: #57
2026-07-14 12:40:47 +02:00
CHatingPython 03448d865e feat(furas): introduce a basic lexer
Closes: #56
2026-07-14 00:38:27 +02:00
CHatingPython cb845ca625 Merge branch 'master' into furas 2026-07-13 20:34:06 +02:00
CHatingPython 798287ef47 refactor: remove ReturnValue instruction 2026-07-13 20:33:37 +02:00
CHatingPython 466d7f003b chore: initialize furas 2026-07-13 19:12:13 +02:00
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 abbc1714c1 refactor(furvm): enforce argument types 2026-07-09 15:02:37 +02:00
CHatingPython b7da2f3d32 feat: add missing furlang/utility/hash.hpp
I forgot to stage it from untracked lol
2026-07-08 00:20:52 +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 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