[m-rev.] for prelim review: redo MC++ backend

Peter Ross pro at missioncriticalit.com
Mon May 20 18:27:15 AEST 2002


trd wrote:
> On 19-May-2002, Fergus Henderson <fjh at cs.mu.OZ.AU> wrote:
> > On 18-May-2002, Peter Ross <pro at missioncriticalit.com> wrote:
> > > The major user visible difference of this change is that any output
> > > variables (except the return value of det functions) will require a *
to
> > > be placed before the variable name when refering to them in the MC++
> > > foreign proc code.
> >
> > Well, that seems like a drawback...
>
> Yes, I managed to work around this in the original implementation, it
> would be nice if we could still do this (and if not, at least know why).
>
It can be done, but it looked like a bit of a pain in the butt to do it,
however I shall fix that today.  However any comments about the code as it
is would be appreciated.

> > > Output Managed C++ code using the same mechanisms as we do for C#
code,
> > > rather than using pragma_c_gen to generate MC++ code.
> >
> > What is the rationale for this change?
>
> I would say maintainability, that's why I've wanted to do this change for
> a while.
>
The main motivating factor for me to doing the change is that Managed C++
and C# are more closely related than MC++ and C code, so as Tyson pointed
out the maintainability is improved by using the same code to output them
both.  This is particulary highlighted when trying to compile MC++ code with
high-level data turned on.  It is all handled correctly in the C# foreign
procs but all the casts cause huge problems on the MC++ foreign procs.

Pete

--------------------------------------------------------------------------
mercury-reviews mailing list
post:  mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------



More information about the reviews mailing list