在 Mon, 27 Jul 2009 08:01:13 +0800,BLS <[email protected]> 写道:

Alexander Bothe wrote:
Hey guys, I created a Windows-IDE for D! I know, It's not the best but I'm still working on it!
 Now there is a fully auto completion supported!
 May someone of you could try it and say if it's working or not...
 http://www.alexanderbothe.com/?id=27
 Requirements are only Windows with Framework v2


Great !!!
any plans to support automatic C# to D net converting ?




Err, hacking Sharpdevelop C# -> VB.NET to produce D code is pretty easy.
I have one working converter. I successfully converted a simple proj of C# to D.(around 1M source? i'm not quite sure). However, the proj doesn't have very dense information. Just some simple protocal collecitons and java beans like stuff + networking.

The automatical part can help you add the import in D code(if a C# module uses another module implicitly because of the namespace, it would help you add this import in the output D file)

It converts C# property to D style functions.

It converts C# other minor differences to conform with the D syntax.

It converts C# generic to D template. It converts C# generic contraint to D2 contraint.

It converts C# event to DFL style event. (i'm not quite sure, if i get it correct, but after then, I find the project can be manually tweaked without the automatical tools' aid.)

It won't work if the C# code involes attributes which has substantial import reference later. It won't work if the C# code which uses PInvoke. Maybe it can be also automatically translated to one .def file and corresponding binding. But the C# proj I wanted to port doesn't contain such code.

One possible improvement is automatically detect C# overload function hack for faking default param, depends on how much effort you want to put on it.

Even so, when I try to look at other C# code and take a chance of porting them, I find it's tougher than what you think really. But maybe one would figure it out later.

Java looks pretty much closer to D. But the early effort of porting java swt to d by some automatical tool is abandoned. Don't know the exact reason, but porting from one language to another really requires lot of effort.

Convert D1 code to D2 is also pretty tough!!

I hope the situation would change later.



--
使用 Opera 革命性的电子邮件客户程序: http://www.opera.com/mail/

Reply via email to