[Mono-list] Making a ruby.net compiler

Miguel de Icaza miguel@ximian.com
09 May 2003 17:31:01 -0400


> You know the .NET platform a lot better than I do so if you say so. 
> However, that does not seam to be the view of the parrot-guys for
> example, go to parrotcode.org and check the FAQ.

Paolo has written a longer and nicer explanation than I did.

But I am biased against Parrot, because I think that many of the core
premises they started with are incorrect ('register machines are better
than stack ones, because there is register allocation research',
`opcodes are 32-bits, because we want to have many opcodes'). 

> Nobody is saying that dynamic languages DOESN'T run under .NET.  Just
> that it's not the optimal solution.

Every time you add a layer of abstraction you loose performance and
introduce bugs.  Sometimes you have to do it.

So in fact, neither parrot nor the CLR are good targets for running
C/C++ applications.  In fact, you could make C# target native code
directly if you wanted to and also remove any references to the CLR
(doing a GCC front-end should be relatively easy).  

But the point is that sometimes you win more than you loose by these
tradeoffs.  So think about it.  The CLR is not even the best platform to
run C# code ;-)