/reia

Ruby-like hybrid OOP/functional programming language for BEAM, the Erlang VM

Primary LanguageErlangMIT LicenseMIT

Reia

FYI: Reia is defunct. No additional work on it is planned. If you are interested in the ideas behind Reia, I strongly suggest you check out the Elixir language, which is now in a more mature stage of development than Reia:

https://github.com/elixir-lang/elixir

About

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

Want to know more about Reia? Syntax examples and that sort of thing? Please visit the home page at:

http://reia-lang.org

Compiling Reia

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

You'll also need Ruby and Rake installed. To compile Reia, type:

rake

After compilation is complete, you'll see the test suite run and if everything went well it should hopefully pass.

Implementation

Here's some thoroughly interesting implementation trivia about Reia:

  • Leex-based scanner
  • Yecc-based grammar (a Neotoma-based branch is also available)
  • Successive parse transforms convert Reia parse trees into the Erlang abstract format, then into BEAM/HiPE bytecode

Links

About the Author

Reia was created by Tony Arcieri, a programmer from Denver, Colorado, USA. Tony has a background in network services and distributed peer-to-peer systems. His favorite programming languages are Ruby and Erlang.