[Mono-list] Making a ruby.net compiler

Miguel de Icaza miguel@ximian.com
08 May 2003 07:35:22 -0400


> Also the .Net platform is really not optimal for dynamic languages.

I wish we could stop spreading the above meme, because it is not true. 
JScript, Smalltalk and VB are two examples of dynamic languages that run
on the .NET platform.

I have to run now, so I can not write a complete essay, but consider:

	* the x86 is not good for scripting languages either.  
	  It is a platform with strong typing (int32 strong typing).

	  Still, scripting languages have no problem running on it.

	* The CIL in fact can be very slow with some operations.
	  For example, to extract the length of a string, or compute
	  the sin of a double.  But most JIT engines will happily 
	  replace "call Sin.Math" (and its underlying assembly) with
	  the fsin opcode.  And call "Array.GetLength (int x)" with
	  mov $eax,[$ebx+offset]

So the issue is more like identifying which pieces an interpreter needs
to get accelerated, and then accelerate them.

Any other statement just reflects on a particular instance on time, of a
particular CLI implementation.