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