RETRO is a clean, elegant, and pragmatic dialect of Forth. It provides
a simple alternative for those willing to make a break from legacy
The language draws influences from many souces including traditional
Forth systems, cmForth, colorForth, Factor, and Parable. It was
designed to be easy to grasp and adapt to specific uses.
The basic language is very portable. It runs on a tiny virtual
machine (Nga), which is written in C. There are multiple interface
options, the main one (rre) is buildable with just the standard C
compiler and libraries on most systems (tested at various points
on Linux, NetBSD, macOS, and Windows, on x86, x86-64, PPC [emulated],
and various ARM processors).
These include source code, documentation, and some examples.
BIN Latest Release (2017.11)
BIN Nightly Snapshot
TXT Recent Changes
[DIR] Prior Versions
A commercial version for iOS is available as well. This runs the same
image and virtual machine as the source release, but adds a few iOS
specific words to make it more useful on that platform.
HTM RETRO 12 for iOS
The virtual machine at the heart of RETRO is also available on its
[DIR] Nga Virtual Machine
Development is tracked using a Fossil repository.
Clone the repo:
fossil clone http://forthworks.com:8000 retro.fossil
And open it:
fossil open /path/to/retro.fossil
The nightly snapshots are directly taken from this repository.
TXT Notes on the Language
TXT Notes on the RRE Interface
TXT Notes on the Listener
TXT Historical: Design Philosphy of RETRO Native Forth
TXT Historical: On The Naming of RETRO
Newest Additions to the docs:
TXT Notes on Evolution of Ngaro into Nga
TXT Notes on Metacompilation & Assembly
TXT Notes on Kernel Wordset
TXT Notes on Prefixes as a Language Element
I can be reached:
- @crcx on Twitter
- @email@example.com on Mastodon
- /r/forth on reddit (/u/_crc)
- #retro on irc.freenode.net (look for crc)
The IRC channel is looged at http://tunes.org/~nef/logs/retro and a
mirror is provided via gopher:
[DIR] IRC Channel Logs
forthworks.com:80 / atua-www / running on retro