[m-dev.] for discussion: higher-order `any' insts

Ralph Becket rafe at csse.unimelb.edu.au
Wed Jan 9 15:39:26 AEDT 2008

Mark Brown, Wednesday,  9 January 2008:
> Hi all,
> Programming with solver types and higher-order code in Mercury is a bit
> painful at the moment, because we have no way of safely handling pred and
> func expressions that may bind non-local solver variables.  The current
> solution is to make such higher-order values impure (which, unfortunately,
> tends to then spread everywhere).
> The code below implements an alternative approach.  This is designed to
> allow us to use solver types and higher-order code without resorting to
> impurity.
> Feedback is welcome (and happy new year, everyone :-))

Excellent stuff!  I've taken a pretty close look at the diff and I can't
see anything wrong with this.

It's going to simplify a lot of G12 code, although moving to the new
scheme will be a fair bit of work.  Do you have a migration plan?  When 
can I start making the changes to the G12 code base?

-- Ralph

p.s.  Happy New Year!
mercury-developers mailing list
Post messages to:       mercury-developers at csse.unimelb.edu.au
Administrative Queries: owner-mercury-developers at csse.unimelb.edu.au
Subscriptions:          mercury-developers-request at csse.unimelb.edu.au

More information about the developers mailing list