In article <Pine.GSO.4.21.0111280902070.10296-100000 / godzilla.ce.chalmers.se>,
Robert Feldt  <feldt / ce.chalmers.se> wrote:
>On Wed, 28 Nov 2001, Phil Tomson wrote:
>
>> >IMHO, you can get a considerable speed-up. AOS/SmallScript is a case in
>> >point (but I'm in the beta program and not allowed to give any
>> >figures). Its not easy but it can be done.
>> 
>> I was under the impression that SmallScript is bytecode compiled - it gets 
>> compiled to bytecode and then a VM runs the bytecode - which I think is 
>> really considered to be in the realm of interpreted as opposed to 
>> compiled (it is kind of a gray area), but maybe I'm wrong.  When you say 
>> 'compiled' it makes my think that you mean 'compiled to native machine code'.
>> 
>I think it is JIT-compiled to native machine code.

Coincidentally...
Tonight I attended a .NET talk at a local university (I'm a Linux person, 
but I wanted to see what all the buz was about and there was free pizza 
too ;-).  Now I can kind of understand the whole .NET thing a little 
better.  CLR takes an input language (C#,VB,C++) and generates an 
intermediate language that gets compiled (they call it JIT compiling, but 
it only happens the first time the app is run) to native code the first 
time the app is run.  I asked about how they would handle dynamic 
languages and was told that there are ways for CLR to sort of 'eval' bits 
of IL (Intermediate Language) - and since theyr'e porting Python and 
Scheme (both pretty dynamic, I think) to .NET, Ruby should work too.  The 
idea of being able to use multiple languages on a project seems kind of 
cool (you could access all of the Perl libraries from your Ruby code for 
example).  Actually, since they convert directly from IL to native 
machine coded, I would think that this would result in pretty fast 
code.  In fact, they guy said that there would be no speed difference 
between an app written in C++ and a functionally equivilent one written 
in VB.  So, now it's just a matter of converting Ruby to IL which can't 
be all that hard ;-)  All kidding aside, lot's of other language 
communities are working on it.  

Is anybody out there already working on this for Ruby?

[but of course, I'm conflicted: One side of me wants Ruby to play well on 
the .NET framework, but the Linux side doesn't want to encourage .NET :]

Phil