AW: [mercury-users] status of .NET support

Wendelin Reich wreich at
Wed Sep 4 01:52:02 AEST 2002

Dear Peter,

Thank you for your detailed information - your project sounds great. If
I understand you and the "Mission Critical" website correctly, your
company is extending/cleaning up Mercury's .NET-support for its own
purposes. Will these enhancements be fed back into the Melbourne Mercury
distribution, or will they become an independent commercial product (I
would be interested, but my gradstudent-budget will be small)? Can you
already estimate the time horizon when your improved .NET-support and
the interface tool you mention will be (Beta-)available?

I understand that your developments will take lots of more time... but
for the time being, could you point me to some example programs that
exploit the .NET-support of the current Melbourne Mercury distribution
(mercury-compiler-0.10.2-beta-2002-08-28.tar.gz)? That would be very
kind - any link or attached source code would be welcome (the Melbourne
website also mentions a .NET-version of Eliza which is not distributed
in the sources).

Thanks again, Wendelin

-----Urspr√ľngliche Nachricht-----
Von: owner-mercury-users at
[mailto:owner-mercury-users at] Im Auftrag von Peter Ross
Gesendet: Dienstag, 3. September 2002 12:47
An: mercury-users at
Betreff: Re: [mercury-users] status of .NET support

Hi Wendelin,

.NET development is still alive and well.  Currently I am being employed
by Mission Critical ( to allow Mercury to be
used for commercial development on the .NET platform.  This involves
getting the compiler to generate valid IL (done modulo bugs), improve
its performance and improve interoperability between Mercury and other
framework languages.

I am currently working on improving the interoperability between Mercury
and other framework languages.  This main thrust of this development is
to use the high-level data representation of Mercury types.  This should
allow Mercury data structures to be more easily used from other .NET
languages.  The work is progressing but slowly at the moment due to
other constraints on my time.

In answer to you questions.
.NET support is not sleeping.
The compiler has always just generated IL (no native code), however the
code is not currently verifiable (for performance reasons).
Nearly all of the library has been ported (about 95% I would think).
A tool has been written which generates a Mercury interface to .NET
classes, by mapping them onto a type-class hierarchy.  The tool is still
under active development and the best representation for an OO hierarchy
in Mercury has not been fully decided yet.  However this tool has been
used in a product to use the .NET XML parser, so it works.  If you wish
for more information, about how to use it then I would be happy to help.

I hope that answers your questions, and feel free to get in contact with
me for any other questions.

mercury-users mailing list
post:  mercury-users at
administrative address: owner-mercury-users at
unsubscribe: Address: mercury-users-request at Message: unsubscribe
subscribe:   Address: mercury-users-request at Message: subscribe

More information about the users mailing list