[Mono-list] C++/CLI Support
kpedersen
kpedersen at live.co.uk
Mon Sep 10 16:28:34 UTC 2012
Hi Guys,
I know people have probably heard this many times but I believe mono could
really benefit from getting a C++ compiler with mono / .NET extensions.
Just a few of the reasons I can think of are below.
1) C++/CLI provides deterministic destruction using auto_handle<T> which is
something all other .NET languages are lacking. This isnt necessarily
important for cleaning up memory and resources, but required for certain
design patterns such as using RAII to stop/join threads or send disconnect
messages when clients leave a server or simply removing a reference from a
list when it is destroyed.
2) The C++/CLI language isn't too bad and is not some quick Microsoft
cashcow hack. After all it was designed in part by Herb Sutter who was on
the ISO C++ standards board for some time. For those developers who are
required to use the .NET language for reasons may not want to learn a whole
new language (especially if they only need to use a fraction of the .NET
framework).
3) In my last project, to add a basic Winforms plugin to a primarily
wxWidgets application, it took no time at all and was extremely elegant. So
while CXXI allows C# developers use native code, there really is nothing
available to allow C++ developers to use .NET code without an incredible
amount of faff. Since C++ is arguably the de-facto language it seems like a
missed opportunity to not utilize .NET easily from within it. If Microsoft
C++/CLR didn't exist, we would need to rewrite the whole application in C#
or another .NET language just to support the plugins!
I know there was work on doing this as a GCC extension, but the project
seemed to have died. Is the reason people arn't interested in continuing
this because the C++ language is too complex?
Best Regards,
Karsten
--
View this message in context: http://mono.1490590.n4.nabble.com/C-CLI-Support-tp4656534.html
Sent from the Mono - General mailing list archive at Nabble.com.
More information about the Mono-list
mailing list