Our great sponsors
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
PropForth5.5
PropForthV5.5 is Forth progamming environment for Parallax Propeller P8X32A microcontroller created by Sal Sanci
I built an AOT compiler for Whitespace with its own SSA-form intermediate representation that lowers to LLVM IR. Whitespace is very similar to a minimal Forth, except, well, syntax. Since StoneKnifeForth has no filesystem access, only stdin and stdout, the principles could be easily adapted for Whitespace.
https://github.com/andrewarchi/nebula
I have a C++ fork of this project in case Python isn't an option: https://github.com/tekknolagi/stoneknifecpp
>If you want to counter Ken Thompson’s “Trusting Trust” attack, you would want to start with a minimal compiler on a minimal chip; StoneKnifeForth might be a good approach.
Some people have been working on fairly good Forths for different, minimal hardware including the Parallax boards.
https://github.com/prof-braino/PropForth5.5
There's also Chuck Moore's GreenArrays GA144 if you want a high performance Forth machine which includes a proto area on the board.
SKF's predecessor tokthr was derived from Jonesforth: https://github.com/kragen/tokthr/blob/master/tokthr.S
IIRC the reason I only allowed single-byte identifiers was to simplify the symbol table, which is implemented by these four lines of code:
: Type Four* header 6144 + + ; ( Table of definition Types: 1=code, 2=data )
Thanks, SOD32 looks interesting. It also led me to find this: https://github.com/kt97679/relf