C# to D Compiler :)

Ronald Adonyo via Digitalmars-d-announce digitalmars-d-announce at puremagic.com
Thu Dec 18 15:58:29 PST 2014


This is the Current Feature List

Basic PInvoke
Arrays including initializers
Fields/ Properties/Methods with correct hiding semantics
Properties are better implemented
String
Int/Double/Bool
Classes and Polymorphism … we follow C# model
Some benchmarks - basic linpack, fannkuch, nbody
Modules/Namespaces
Enum - no enum.Parse support yet though
Iterators are as .Net use enumerators etc … switching arrays to 
use simple for loop though for performance improvement
Constructors/Overloads/Base Class calls
Static Variables/Members/Properties
Basic System.Math, more implementations required though
Extension Methods
Operator Overloading
Indexers
Anonymous Classes
Generics … All current test cases work
Boxed structs and interface casting for them
Inner Classes in the form of OuterClass_InnerClass
Static Constructors
Explicit Interfaces … current fix is not so pretty though … i.e. 
IEnumerator.MoveNext becomes IEnumerator.IEnumerator_MoveNext 
(this allows implementing methods with same name, differently)
Implicit and Explicit Cast Operators
String switch … dlang supports this natively :)
String.Format .. though implementation is very basic
C# multi dimensional arrays work correctly (even with multi dim 
syntax :) )… mostly … look at multi test from CrossNet
Delegates work including multicast (Native delegates through 
P/Invoke work too)
Events work as expected … though a bit slower than C#(mono)


More information about the Digitalmars-d-announce mailing list