[m-dev.] IL, Mono and Portable .NET

Julien Fischer juliensf at cs.mu.OZ.AU
Wed Feb 1 23:08:26 AEDT 2006

On Wed, 1 Feb 2006, Jonathan Morgan wrote:

> On 2/1/06, Julien Fischer <juliensf at cs.mu.oz.au> wrote:
> >
> > On Wed, 1 Feb 2006, Jonathan Morgan wrote:
> >
> > > Any idea how much work it would be to natively support Mono or DotGnu
> > for
> > > the IL backend with both mmake and mmc --make?
> >
> > I've just tried it with DotGNU and compiled most of the library with both
> > mmake and mmc --make.  It looks like there is a bug in the MLDS backend
> > that
> > causes it to duplicate definitions in the IL code when compiling
> > library/injection.m (which is where it dies for me at the moment)
> And the seriousness of such a bug is?

Fairly minor I would think; I should get some time to look at it in the
next couple of days.

> > > Is it likely to be just a matter of adding their programs to the
> > > configure script and then choosing command line options depending on the
> > > compiler, or will more work be needed to get the IL compiling?
> >
> > Essentially the former, probably some of the XXX comments in
> > scripts/Mmake.vars.in also need to be addressed.  The patch below
> > partially adds support for DotGNU.
> Thanks.  I'll give it a try sometime.
> > > I think it would also be necessary to add a command line option to disable
> > > MC++, and have that on by default if no MC++ compiler is detected (the
> > > only MC++ code in the standard library is in benchmarking.m).
> >
> > The only MC++ code I can see in benchmarking.m is commented out anyway; if
> > at all possible it should just be implemented in C#.
> You're right - I hadn't noticed that.   I was assuming there was some good
> reason to have it as MC++, as Peter said they thought it was the flakiest of
> the three compilers, which is why most of the library is in C# or IL.

Maybe, but it doesn't look as though much of the benchmarking module was
ever implemented for the IL backend period.

> > > Also, it's worth noting that (with patches committed recently) Mercury's
> > > IL backend works perfectly with the .NET SDK 1.1 (which is probably a
> > > better thing to recommend).  I haven't yet tried 0.12.2 to see if it
> > > works out of the box, but it should do.
> >
> > There shouldn't be any difference with 0.12.2.
> So I would assume, but as you can see from mercury-users,  I can't even get
> mercury-compiler-0.12.2 even starting to compile on Cygwin, and the IL grade
> refuses to build under MSYS/MinGW.

I'm having a look at the cygwin thing now.  Can you be more specific how the
il grade refuses to build under MSYS/MinGW?

mercury-developers mailing list
Post messages to:       mercury-developers at cs.mu.oz.au
Administrative Queries: owner-mercury-developers at cs.mu.oz.au
Subscriptions:          mercury-developers-request at cs.mu.oz.au

More information about the developers mailing list