[m-dev.] Re: for review: add parsing/storing of assertions

Fergus Henderson fjh at cs.mu.OZ.AU
Tue Jul 13 14:51:20 AEST 1999


On 09-Jul-1999, Lee Naish <lee at cs.mu.OZ.AU> wrote:
> Some general comments:
> 
> Assertions are a very general concept and a very flexible syntax has
> been chosen for them.  For now, they are just used for the accumulator
> introduction optimisation, but its likely that in the future they will
> be used for various other things (determinism detection, the declarative
> debugging oracle, promise_one_solution,...).

I don't think `:- assertion' declarations will be or should be used for
determinism detection or as an alternative to promise_one_solution.
`:- assertion' declarations should always remain something that the
implementation is free to ignore.  Likewise, `:- assertion' declarations
probably won't be useful for the declarative debugger oracle -- I think
the declarative debugger oracle would want to make use of specifications,
not `:- assertion' declarations. 

(However, you might well want to use the declarative debugger to debug
errors in your `:- assertion' declarations!  This might require some
tricky extensions to the debugger...)

> Its worth thinking
> about this broader/longer term view of assertions a bit more and, eg
> acknowledging in the documentation that this is the first version of
> assertion support and its geared towards accumulators (ie associativity).

I agree with this suggestion about the documentation.

-- 
Fergus Henderson <fjh at cs.mu.oz.au>  |  "I have always known that the pursuit
WWW: <http://www.cs.mu.oz.au/~fjh>  |  of excellence is a lethal habit"
PGP: finger fjh at 128.250.37.3        |     -- the last words of T. S. Garp.
--------------------------------------------------------------------------
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