Changed: Enum types are now implemented as instances.
Before this version enum types were implemented as their underlying primitive type. Typically, an enum was implemented as an int (value type). This has been changed. Now enums are implemented as object instances as in Java. The reason is that we could not distinguish between enum parameters and primitive type parameters. So both method Foo(int) and method Foo(MyEnum) were compiled to Foo(int) causing a verify error.
This change is handled by the dot42 compiler. It does not require any change in your code.
Improved: Device Center usability.
The Device Center has been simplified by removing the Home tab and removing all unnecessary ribbon buttons.
Improved: Many .NET framework members added.
Lots of .NET members have been added to existing types and new types have been added. This includes types in System.Net and System.ComponentModel.
Fixed: Java classes using SomeType<Void> cause verify errors.
In Java it is allowed to use Void as a type argument for generic parameters. This is not supported in C#. When a Java jar file is imported into C#, all Void type arguments are converted to Object.
Fixed: Nullable enum types cause verify error.
This has been solved as part of the above enum change.
Fixed: TearDown attribute on NUnit tests not supported.
The TearDownAttribute attribute has been added and is used as expected in NUnit test cases.
Fixed: Various minor compiler issues
Lots of small (often unreported) compiler issues have been fixed.
Coming soon...
We are getting close to releasing support for the SharpDevelop IDE.
Awesome!
ReplyDeleteA side question: How do I add a JAR reference?
Ah! found it.
ReplyDeleteRight click project > Add Jar Reference...