Retro Language


Retro is a concatenative, stack-based programming language with roots in Forth. It is intended to be clean and practical.

All code, documentation, and any binaries included are provided under the ISC License unless otherwise noted in the source. Please feel free to take, use, and modify Retro as you see fit.


Development is managed using the Bazaar version control system. Our primary repository is hosted on Launchpad.net

You can obtain a current copy of the code by doing:

bzr branch lp:retro-language

We also publish hourly snapshots of the code to the website.


Retro comes with a variety of documents describing the language, virtual machine, and implementation details. Most of these are in ReStructured Text (ReST) format and can be converted to other formats using docutils. A stylesheet is included for HTML output.

Getting Help

We have an irc channel on the freenode network. Join #retro on irc.freenode.net. If you ask a question, please be patient. We have large idle times, but the channel is logged (see http://rx-core.org/dev/rancid) and we generally try to answer questions in a reasonible time period.

You can also ask questions on the mailing list. Signups, and a public archive, are at http://groups.google.com/group/retro-10

Please read the documentation before asking questions.

Bug Reports

Bugs can be reported on the Launchpad project pages, to the irc channel or to the mailing list.