github
Advanced Search
  • Home
  • Pricing and Signup
  • Explore GitHub
  • Blog
  • Login

tarcieri / reia

  • Admin
  • Watch Unwatch
  • Fork
  • Your Fork
  • Pull Request
  • Download Source
    • 309
    • 17
  • Source
  • Commits
  • Network (17)
  • Issues (7)
  • Downloads (0)
  • Wiki (1)
  • Graphs
  • Branch: master

click here to add a description

click here to add a homepage

  • Branches (3)
    • master ✓
    • minimalist
    • neotoma
  • Tags (0)
Sending Request…
Enable Donations

Pledgie Donations

Once activated, we'll place the following badge in your repository's detail box:
Pledgie_example
This service is courtesy of Pledgie.

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

  cancel

http://reia-lang.org

  cancel
  • Private
  • Read-Only
  • HTTP Read-Only

This URL has Read+Write access

Update README with information about the new branch 
Tony Arcieri (author)
Sat Dec 19 14:22:10 -0800 2009
commit  f7381953784521f7aca17d881b411f871613e66a
tree    2470f29c950a999cc6ed986c2556b0c433bba465
parent  d8bc28a9468ce92ec986fab8be8c1396726c13a1
reia /
name age
history
message
file INTERNALS.textile Sun May 10 00:16:09 -0700 2009 <3 you Textile [Tony Arcieri]
file LICENSE Sat Jul 26 13:42:05 -0700 2008 Add license information [Tony Arcieri]
file Makefile Sun Apr 05 15:31:22 -0700 2009 Add clean task and correct distclean task [Tony Arcieri]
file README.textile Sat Dec 19 14:22:10 -0800 2009 Update README with information about the new br... [Tony Arcieri]
file Rakefile Wed Mar 25 23:14:09 -0700 2009 Have the 'reia' script thunk through the reia m... [Tony Arcieri]
directory artifacts/ Sat Sep 06 00:53:29 -0700 2008 New build system [Tony Arcieri]
directory bin/ Tue Mar 31 14:36:01 -0700 2009 very dirty makefile [pirj]
directory ebin/ Thu Sep 25 19:53:35 -0700 2008 Minor build system cleanups (disabling smart ex... [Tony Arcieri]
directory examples/ Sat Apr 25 17:45:31 -0700 2009 Update ring example to use a block when creatin... [Tony Arcieri]
directory lib/ Sat May 09 16:26:26 -0700 2009 Implement File.exists? [Tony Arcieri]
directory src/ Tue Jun 23 22:59:18 -0700 2009 Merge branch 'rec' [Tony Arcieri]
directory test/ Mon May 25 14:42:49 -0700 2009 Failing test case for exponent calculation [Tony Arcieri]
README.textile

Reia

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

New branch underway!

Looking for the latest Reia developments? They’re not happening here, sorry.
Reia is undergoing a rewrite and the latest code is available here:

http://github.com/tarcieri/reia/tree/minimalist

This branch is preserved as a mostly-working dead end, so people can experiment
with the features the new branch will eventually have until they reach a certain
level of feature parity. For more information, see the roadmap:

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

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

To compile Reia, type:

make

under the Reia source tree to build Reia.

Installation

If Reia has compiled successfully, type:

make install

to 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.

Usage

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.

Implementation

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

Links

  • 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

About the Author

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.

Blog | Support | Training | Contact | API | Status | Twitter | Help | Security
© 2010 GitHub Inc. All rights reserved. | Terms of Service | Privacy Policy
Powered by the Dedicated Servers and
Cloud Computing of Rackspace Hosting®
Dedicated Server