Saturday I joined the DotGNU IRC
meeting to discuss their Java support. We decided to make sure that our efforts will
be interoperable.
They are working on a Java source to IL compiler and this complements IKVM's byte
code to IL compiler nicely. We'll be working together to create a standard format
for remapping Java classes to .NET classes and define custom attributes to express
Java semantics that don't map directly onto the .NET standard attributes.
I made new source and binaries snapshots
available. Not many changes:
-
invokespecial byte code now checks for null references before calling the
method. I intend to write an item on invokespecial in the future, because
it is quite an interesting instruction with a bit of a history.
-
Improved method overriding handling for methods that are less accessible than the
method they override. Java allows this, but .NET doesn't. It is handled by giving
the overriding method the same (or better) accessibility as the overriden method.
IMHO this is a design flaw in the CLR, because it makes it a
breaking change to widen the access of a virtual method in a new version of a type.
-
Improved ikvmc's handling of -recurse and added wildcard support to file
arguments.