StoneKnifeForth (With a Metacircular Compiler)

This page summarizes the projects mentioned and recommended in the original post on

Our great sponsors
  • Scout APM - Less time debugging, more time building
  • SonarQube - Static code analysis for 29 languages.
  • OPS - Build and Run Open Source Unikernels
  • GitHub repo stoneknifeforth

    a tiny self-hosted Forth implementation

  • GitHub repo nebula

    Compiler for the stack-based Whitespace language with LLVM back end. (by andrewarchi)

    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.

  • Scout APM

    Less time debugging, more time building. Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.

  • GitHub repo stoneknifecpp

    C++ port of [stoneknifeforth](

    I have a C++ fork of this project in case Python isn't an option:

  • GitHub repo PropForth5.5

    PropForthV5.5 is Forth progamming environment for Parallax Propeller P8X32A microcontroller created by Sal Sanci

    >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.

    There's also Chuck Moore's GreenArrays GA144 if you want a high performance Forth machine which includes a proto area on the board.

  • GitHub repo tokthr

    tiny token-threaded bytecode interpreter in x86 assembly

    SKF's predecessor tokthr was derived from Jonesforth:

    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 )

  • GitHub repo relf

    Relative Forth

    Thanks, SOD32 looks interesting. It also led me to find this:

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts