krisbug/bugforth
2
4
Fork
You've already forked bugforth
1

New architecture: C #6

Closed
opened 2025年11月15日 11:20:33 +01:00 by krisbug · 4 comments

Create a new C-based architecture for the purpose of deprecating arch/bytecode as the default architecture.

Benefits:

  1. Better performance than bytecode(?)
  2. 32/64 bit cells
  3. Bigger dictionary is possible
  4. Would be the first arch with the MEMORY wordset implemented
  5. More extensible

Drawbacks:

  1. Depends on a C compiler (just like bytecode, but bytecode also depends on xxd)

Progress:

  • Implement C "assembler" based on genasm.fth
  • Implement primitives
  • Implement I/O
  • Make it the default arch
Create a new C-based architecture for the purpose of deprecating arch/bytecode as the default architecture. **Benefits:** 1. Better performance than bytecode(?) 2. 32/64 bit cells 3. Bigger dictionary is possible 4. Would be the first arch with the MEMORY wordset implemented 5. More extensible **Drawbacks:** 1. Depends on a C compiler (just like bytecode, but bytecode also depends on xxd) **Progress:** - [x] Implement C "assembler" based on genasm.fth - [x] Implement primitives - [x] Implement I/O - [x] Make it the default arch
krisbug changed title from (削除) New architecture: C ITC (削除ここまで) to New architecture: C 2025年11月20日 18:54:13 +01:00
Author
Owner
Copy link

Started work on it: commit 053f984f2a

Started work on it: commit 053f984f2ad4ca5a85528c29652b919c6d6131ba
Author
Owner
Copy link

As of commit da66347b15, it is now possible to enter the interpreter, type a word, execute it and segfault

As of commit da66347b15, it is now possible to enter the interpreter, type a word, execute it and segfault
Author
Owner
Copy link

Mostly done, still needs more testing and fixes.

Mostly done, still needs more testing and fixes.
Author
Owner
Copy link

Done. Finishing touches in commit 165e438920 :)

Done. Finishing touches in commit 165e438920 :)
Sign in to join this conversation.
No Branch/Tag specified
main
No results found.
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
krisbug/bugforth#6
Reference in a new issue
krisbug/bugforth
No description provided.
Delete branch "%!s()"

Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?