b4 icon indicating copy to clipboard operation
b4 copied to clipboard

b4 : a tiny forth-like virtual machine

#+title: The b4 virtual machine

  • About

b4 is a tiny virtual machine, with a forth-like flavor.

There are currently five implementations:

  • [[./jlang/]], implemented in [[https://code.jsoftware.com/wiki/Main_Page][J]].
  • [[./pas/]], implemented in [[https://www.freepascal.org/][free pascal]].
  • [[./lil/]], implemented in [[https://beyondloom.com/decker/lil.html][lil]].
  • [[./js/]], implemented in javascript.
  • [[https://github.com/tangentstorm/b4-gd][b4-gd]], implemented in GDScript for [[https://docs.godotengine.org/en/stable/][Godot 4]].

The implementations are kept in sync through the tests in [[./b4-tests.org]]

See [[./bios/bios.b4a.org]] for an example of b4 assembly language.

  • Links
  • [[https://github.com/tangentstorm/b4][b4 github repo]]
  • twitter: [[https://twitter.com/tangentstorm][@tangentstorm]] / [[https://twitter.com/#!/search/realtime/%23b4lang][#b4lang]]
  • reddit: [[http://reddit.com/r/b4lang][/r/b4lang]]
  • Background

B4 is a forth-like language. Quick intros to forth (free and online):

  • [[http://www.colorforth.com/POL.htm][Programming a Problem-Oriented Language]]
  • [[http://www.forth.com/starting-forth/][Starting Forth]]

B4 was strongly influenced by the [[http://retroforth.org/docs/The_Ngaro_Virtual_Machine.html][ngaro virtual machine]] from retroforth 11, as well as the [[https://www.greenarraychips.com/home/documents/index.php#architecture][forth chips from greenarrays]].