> >  think the JVM is a much better platform for alternate languages
> >  than .NET.
>
> Why?

I personally didn't write any of our C# code, but a couple of our
issues with .NET:

- my biggest issue with .NET is that to get line numbers in stack
traces you have to generate a pdb file - this is ugly from a
deployment perspective if you want line numbers in production code.
That format is Microsoft specific (I think Mono uses a different
format).  Worse of all is that you actually have to generate the pdb
file on the disk which just kills performance.  It is a lot of work
compared to the elegance of adding a line table attribute in Java
bytecode.

- jars are simple pkzip files and easy to generate, I can't say the
same about generating a dll from scratch

- the JVM provides more flexibility to dynamically load types because
there is an extremely clear specification to describe the binary
classfile.  Writing a simple bytecode assembler is a day of work - you
can generate classes easily in memory and load them as needed on a
class granularity basis.  .NET imposes more restrictions about how
bits and pieces of an assembly are dynamically loaded.  Right now we
ended up just generating the whole assembly at once to avoid the
headaches, but that is a real performance issue we still need to
address.

- as a compiler writer I find the lack of stack manipulation bytecodes
for a stack based VM frustrating because you need to resort to
synthetic local variables

- personally I find Microsoft's online documentation exceedingly
difficult to work with (but that is just a matter of taste)

I just really like Java's simple and extremely well specified file
formats.  But in the end they are both really great VMs.

How do you handle line numbers in Boo?  Are we just missing something,
or do you really have to generate a pdb file to disk?


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "JVM 
Languages" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/jvm-languages?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to