public
Fork of macournoyer/tinyrb
Description: The tiny and fast (subset of) Ruby VM that loves you like you are
Homepage: http://code.macournoyer.com/tinyrb/
Clone URL: git://github.com/febuiles/tinyrb.git
tinyrb /
name age message
file .gitignore Sat Feb 14 10:28:22 -0800 2009 Simpler way to alias a method. [macournoyer]
file Makefile Loading commit data...
file README
file TODO
directory bench/ Mon Feb 16 16:58:52 -0800 2009 instance and class vars, grrreat [macournoyer]
directory lib/
directory site/ Thu Feb 12 21:10:44 -0800 2009 Add one more link to website [macournoyer]
directory test/
directory vendor/ Sun Feb 08 12:05:26 -0800 2009 Replace Io GC w/ boehm's [macournoyer]
directory vm/
README
= TinyRb

A tiny subset of Ruby with a Lua'esc VM.

Everything in TinyRb should run in the big Ruby.
(except bugs and things that don't comply to the principle of least surprise.)
But not everything in the big Ruby should run in TinyRb.

This is a work in progress and not usable for "real things" yet.
See TODO for a couple of those things that need to be done.

http://github.com/macournoyer/tinyrb
#tinyrb on freenode

== Install
Install Ragel v6.3 or greater:

  wget http://www.complang.org/ragel/ragel-6.3.tar.gz
  tar xzf ragel-6.3.tar.gz
  cd ragel-6.3
  ./configure
  make
  sudo make install

Compile tinyrb:

  make
  make test # optional
  ./tinyrb -h

== What WON'T be in tinyrb
* alias keyword (see alias_method)
* undef keyword (see undefine_method)
* throw, catch
* Alternate string delimiters (%q, %Q, etc.)
* heredoc strings
* Parallel assignment (a, b = 1, 2)
* :: as . (Class::new)
* Character code literal (?c)
* protected, private, public (yes everything is public, mind you)
* ObjectSpace
* Regexp literal (not sure about this one yet)
* $SAFE (but Sandbox mode at the VM level)
* ... other to come for sure.

== Credits
Inspired by:
 lua,     http://www.lua.org
 tinypy,  http://tinypy.org
 potion,  http://github.com/why/potion

kvec.h and khash.h (c) 2008, by Attractive Chaos <attractivechaos@aol.co.uk>
GC Copyright 1988, 1989 Hans-J. Boehm, Alan J. Demers

(c) Marc-Andre Cournoyer <macournoyer@gmail.com>