[Mono-list] Questions on the Mono roadmap
Paolo Molaro
lupus@ximian.com
Wed, 19 Jan 2005 16:34:35 +0100
On 01/18/05 Jonathan Pryor wrote:
> Just curious, but what part of the C++/CLI proposal requires a P64
> memory model (instead of LP64)? And more importantly, *why*?
In C++/CLI longs are 32 bit and this makes it useless for
interoperability with C++ code in any 64 bit arch that is not windows.
You can still use it to have the C++ template support and multiple
inheritance, but the rest of the language and the CLI adaptations are
so ugly that I think it's not worth the pain. People
should just avoid managed C++: it was a tentative to bridge from
old programs to the new managed world, but it is a failure.
People who ported to managed C++ will have to rewrite, because it
will soon be unsupported. C++/CLI may not have a better fate:
if you have to rewrite you can just as well switch to C#.
If you need to access managed code from C++ using mono, the
embedding interface is the right way to do it, wrappers like
cilc can help to provide a nicer interface.
If you need to access C++ code from mono you currently
need to provide C wrappers that can be pinvoked: it's not
unlikely, though, that an enterprising contributor or a
skilled student would enhance mono so that it can use C++
directly with a simple attribute set on a class (maybe
also generating the class automatically by parsing the C++
header files).
lupus
--
-----------------------------------------------------------------
lupus@debian.org debian/rules
lupus@ximian.com Monkeys do it better