Welcome to Reia (pronounced RAY-uh), a Ruby/Python-like scripting language for
the Erlang virtual machine (BEAM).
Reia requires Erlang version R12B-3 (5.6.3) or later. The latest version of
Erlang is available here:
http://www.erlang.org/download.html
To compile Reia, type:
makeunder the Reia source tree to build Reia.
If Reia has compiled successfully, type:
make installto install Reia systemwide. This will install the “reia” and “ire” scripts in
/usr/local/bin. Be sure to add this to your path (or move the scripts
elsewhere) if you’d like to be able to use Reia systemwide.
Reia provides three ways to execute programs:
- The Reia interpreter, located in bin/reia (or just “reia” if you’ve installed
Reia systemwide). This runs Reia programs from the command line.
- The interactive Reia interpreter, located in bin/ire (or just “ire” if you’ve
installed Reia systemwide). This provides an interactive environment (a
read-eval-print loop) for running Reia programs, or just exploring the
language.
- The Reia static compiler, located in bin/reiac (not installed systemwide).
This compiles Reia to .beam files which may be used in conjunction with
Erlang code. The static Reia compiler is intended for compiling the
self-hosted parts of Reia and is not intended for general-purpose use.
Here’s some thoroughly interesting implementation trivia about Reia:
- Leex-based scanner
- Yecc-based grammar
- Compiler transforms Reia abstract forms to Erlang abstract forms or BEAM
bytecode - Partly self-hosted: Reia’s builtin types are mostly written in Reia
- Home Page: http://reia-lang.org
- Reia Wiki: http://wiki.reia-lang.org/
- Mailing List: http://groups.google.com/group/reia
- Author’s Blog: http://unlimitednovelty.com/
- Author’s Twitter: http://twitter.com/bascule
- IRC: irc.freenode.net #reia
Reia was created by Tony Arcieri, a programmer from Boulder, Colorado, USA.
Tony has a background in network services and distributed peer-to-peer systems.
His favorite programming languages are Ruby and Erlang.