Skip to content
vic

tarcieri/reia

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

tarcieri/reia.json
{
"createdAt": "2008-03-21T18:48:17Z",
"defaultBranch": "master",
"description": "Ruby-like hybrid OOP/functional programming language for BEAM, the Erlang VM",
"fullName": "tarcieri/reia",
"homepage": "http://reia-lang.org",
"language": "Erlang",
"name": "reia",
"pushedAt": "2012-07-05T17:41:47Z",
"stargazersCount": 776,
"topics": [],
"updatedAt": "2025-09-19T21:25:57Z",
"url": "https://github.com/tarcieri/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

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

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.

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

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.