Skip to content
This repository has been archived by the owner on May 27, 2021. It is now read-only.
/ reia Public archive
forked from tarcieri/reia

Reia is a Ruby/Python-like language for BEAM, the Erlang VM

License

Notifications You must be signed in to change notification settings

Narnach/reia

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

= Reia

Welcome to Reia (pronounced RAY-uh), a Ruby/Python-like scripting language for
the Erlang virtual machine (BEAM).

== Installation

Reia cannot presently be installed in the traditional sense.  Instead, 
programs must presently be executed from the toplevel directory of the Reia
distribution.

Reia also depends on a working Erlang installation, and requires a minimum 
Erlang version of R12B-3 (5.6.3). The latest version of Erlang is available here:

http://www.erlang.org/download.html

== Usage

Reia provides three ways to execute programs:

* The Reia interpreter, located in bin/reia.  This runs Reia programs from the
  command line without needing to compile them first.
  
* The interactive Reia interpreter, located in bin/ire.  This provides an
  interactive environment (a read-eval-print loop) for running Reia programs,
  or just exploring the language.
  
* The Reia compiler, located in bin/reiac.  This compiles Reia to .beam files
  which may be used in conjunction with Erlang code.  The main use of the Reia
  compiler is for compiling the self-hosted parts of Reia itself.  Programs
  compiled with it are more limited than ones run with the standard Reia
  interpreter.
  
== Compiling Reia

To compile Reia, you will need a working installation of Erlang (at least 
R12B-3) as well as the "rake" tool.  Instructions for installing Rake are 
available at:

http://rake.rubyforge.org/

Once you've installed rake, type:

rake

under the Reia source tree to build Reia.

== Implementation

Here's some thoroughly interesting implementation trivia about Reia:

* Leex-based scanner (with second pass for indentation sensitivity)
* Yecc-based grammar
* Compiler transforms Reia abstract forms to Erlang abstract forms or BEAM 
  bytecode
* Partly self-hosted: most core Reia types are written in Reia

== Programming Reia

Reia is under active development and therefore changing constantly.  For the
most up-to-date information on how to program in Reia, consult the Wiki:

http://wiki.reia-lang.org/

About

Reia is a Ruby/Python-like language for BEAM, the Erlang VM

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages

  • Erlang 100.0%