This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (
This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (
commit e282773e3cb5f1fe21a4c63acd83d7fdc6132a0d
tree 5a7e3b30a09d2d57ddd40f0f991f66383d4c84b3
parent ff3f281db3b6022e6eb058fb35b64beba0ea2d8f
tree 5a7e3b30a09d2d57ddd40f0f991f66383d4c84b3
parent ff3f281db3b6022e6eb058fb35b64beba0ea2d8f
rubinius /
| name | age | message | |
|---|---|---|---|
| |
.autotest | Wed Mar 12 14:27:54 -0700 2008 | [zenspider] |
| |
.gitignore | Sat Mar 08 17:11:30 -0800 2008 | [drbrain] |
| |
AUTHORS | Sat Sep 29 01:12:28 -0700 2007 | [kevinclark] |
| |
INSTALL | Thu Oct 18 15:32:23 -0700 2007 | [drbrain] |
| |
LICENSE | Wed Feb 27 10:23:15 -0800 2008 | [wilson] |
| |
Makefile | Tue Nov 13 17:32:37 -0800 2007 | [evanphx] |
| |
README | Thu Oct 18 14:43:12 -0700 2007 | [drbrain] |
| |
README-DEVELOPERS | Thu Feb 21 17:52:43 -0800 2008 | [drbrain] |
| |
Rakefile | Fri May 16 10:56:59 -0700 2008 | [evanphx] |
| |
THANKS | Wed May 30 14:44:05 -0700 2007 | [System User] |
| |
benchmark/ | Tue Mar 11 02:29:58 -0700 2008 | [tmornini] |
| |
bin/ | Tue Mar 11 02:29:58 -0700 2008 | [tmornini] |
| |
configure | Fri Jan 25 16:42:29 -0800 2008 | [evanphx] |
| |
doc/ | Tue Feb 12 21:01:36 -0800 2008 | [drbrain] |
| |
kernel/ | Fri May 23 13:00:21 -0700 2008 | [evanphx] |
| |
lib/ | Fri May 23 13:00:21 -0700 2008 | [evanphx] |
| |
mspec/ | Tue Mar 25 17:17:59 -0700 2008 | [evanphx] |
| |
rakelib/ | Wed May 07 17:49:20 -0700 2008 | [evanphx] |
| |
shotgun/ | Wed May 21 17:23:31 -0700 2008 | [evanphx] |
| |
spec/ | Wed May 07 17:49:20 -0700 2008 | [evanphx] |
| |
stdlib/ | Tue Mar 11 14:58:02 -0700 2008 | [oleg dashevskii] |
| |
test/ | Sat Mar 08 20:42:34 -0800 2008 | [drbrain] |
| |
tools/ | Mon Mar 10 03:36:35 -0700 2008 | [crafterm] |
| |
vm/ | Sat May 31 14:33:42 -0700 2008 | [dbussink] |
README
1. What is Rubinius Rubinius is a next-generation virtual machine and compiler for Ruby. Based loosely on the Smalltalk-80 'Blue Book' design, Rubinius will provide a rich, high-performance environment for running Ruby code. 2. Running Rubinius Refer to the INSTALL file for instructions on getting and building Rubinius. 3. Status Rubinius is under heavy development, and currently supports the basic Ruby classes and kernel methods. The code base is written in a mixture of ANSI C and Ruby; with more Ruby and less C as the project proceeds. You should not run your mission-critical Rails apps under Rubinius yet. 4. Goals * Thread safety. Rubinius intends to be thread-safe so you could embed more than one interpreter in a single application. It does not currently meet this goal due to some components borrowed from the mainline Ruby interpreter. * Clean, readable code that is easy for users to understand and extend. * Reliable, rock-solid code. Valgrind is used to help verify correctness. * Bring modern techniques to the Ruby runtime. Pluggable garbage collectors and code optimizers are possible examples. 5. Volunteering to Help The Rubinius team welcomes contributions, bug reports, test cases, and monetary support. One possible way to help is implement Ruby library classes. Visit http://rubinius.lighthouseapp.com for documentation on how to begin hacking Rubinius. 6. Architecture Rubinius currently uses C to bootstrap the system. In the future, a limited dialect of Ruby called cuby/garnet will be used to generate C. This is a time-honored technique, used by systems such as Squeak, Smalltalk, and Algol on the Burroughs systems (as seen in the movie 'Tron'). For now, this code is hand-written, and can be found in the ./shotgun/lib directory. This code was ported from a Ruby implementation found in the ./lib directory. For example, shotgun/lib/object_memory.c is the C translation of lib/object_memory.rb. The compiler, assembler, and bytecode generators are all written in Ruby, and can be found under the ./lib directory. Other systems use the word 'translator' for what is here referred to as 'compiler'. The ./bin/rcc script can be used to display the symbolic output of the compiler, for debugging or learning purposes.




