From: Wilson Bilkovich Date: 2007-09-29T00:47:53+09:00 Subject: Re: need a simplified understanding of Rubinius On 9/27/07, Dave Rose wrote: > ...just curious...how does Rubinius 'boot' itself up and how does > translate ruby into bytecode.... i know a little about parsing and > compilers ... but what makes rubinius different? i hear it is actually > written in ruby... but that's circular? like MC Ecsher the hand drawing > a hand?....tia dave Basically what you do is you write a first implementation using language A. Then you use that implementation to create an 'artifact' that is capable of running language B. If you do this carefully, you can then discard everything you wrote in language A. For example, Pascal was first implemented in FORTRAN. Once that worked, they rewrote the compiler in Pascal, and away they go.. etc. Instead of an Ecsher drawing, it is more like using scaffolding to build a house. When you are done, the house is made entirely out of "house". Heh. In answer to your second question.. Rubinius isn't really 'different'. It uses only time-honored implementation techniques. They just happen to be techniques that have not often been used to implement dynamic languages.