I think it might be actually quite interesting for the original poster to take some of FONC's work such as OMeta, and then the Rubinius project... and use it to build Ruby in OMeta, which could then be used quite easily to plug this Ruby implementation in OMeta into the JavaScript implementation OMeta which is already existing...

For an example of SmallTalk already written in OMeta/JS (ie SmallTalk running inside Javascript, through OMeta), please see:

http://tinlizzie.org/ometa/ometa-js-old/

Given that JavaScript is pretty much the *only* fully realised cross-browser cross-platform implemented programming language that we have available to us (ie guaranteed to be on EVERY machine for the last 10 years), and also given that so much work is continually put into making these interpreters fast and small, I think writing things on top of JavaScript is a brilliant idea.

The other interesting thing about targeting OMeta as an implementation language for a VM in Ruby, while incredibly technically challenging, is that it would be infinitely rewarding, as there are versions of OMeta written in most common programming languages already (which means the target language base of the Ruby implementation in OMeta would grow without any additional effort on the part of the programmers)... people are writing OMeta implementations in various languages, and there are already ones written in:

OMeta itself, C#, SmallTalk, Scheme, Lisp, Python and Ruby (I'm fairly sure there are some written in id.st (or Cola, whatever you want to call it) as well ;-))

Just my two cents.

"You are now able to program any browser in the world with any language you want"
http://www.youtube.com/watch?v=YEx4jfdFp1k

Julian.

----------------------------------------------
Buy my new album! 16 Sep 2010:
http://itunes.apple.com/au/album/erste-zeit/id393326346







On 08/04/2011, at 12:01 PM, Chad Perrin wrote:

> On Fri, Apr 08, 2011 at 05:37:49AM +0900, Peter Zotov wrote:
>> On Fri, 8 Apr 2011 01:48:58 +0900, Chad Perrin wrote:
>>> 
>>> I don't see any license listed.  Did I overlook it?
>> 
>> The Ruby license, of course. It is implicit.
>> (Indeed, I just forgot to add it to git. Fixed already.)
> 
> I haven't looked closely enough to know which way this goes, but one of
> two sets of conditions are likely to apply here:
> 
> 1. It's "implicit" because it incorporates Ruby Licensed code in a way
> that requires the Ruby License to be applied to the whole project.  In
> this case, you violate the terms of the license if you do not include the
> license text with the code.
> 
> 2. It's not "implicit", and needs license notification.
> 
> I'm not a lawyer, but I spend a lot of time trying to avoid giving
> lawyers reason to contact me with bad news.
> 
> -- 
> Chad Perrin [ original content licensed OWL: http://owl.apotheon.org ]