[m-dev.] On the addition of assertions
Peter Ross
petdr at cs.mu.OZ.AU
Wed Aug 25 15:28:41 AEST 1999
On 24-Aug-1999, Zoltan Somogyi <zs at cs.mu.OZ.AU> wrote:
>
> > How about the following alternative: assertion declarations are allowed
> > in the interface, but the implementation never copies them to the `.int*'
> > files, instead putting them only in the `.opt' and `.trans_opt' files.
> > After type-checking the module, the implementation should check that any
> > assertion declarations in the interface do not contain any symbols from
> > modules imported only in the implementation.
>
> That would work for the kinds of assertions Peter needs (e.g. associativity
> for accumulator introduction). It would not work for assertions that state
> "these two goals are mutually exclusive" (whatever specific term we end up
> using for assertions of that type), because the determinism-correctness of
> a module can depend on seeing assertions of this type that are made in other
> modules.
>
> However, I suppose we can worry about those kinds of assertions later.
>
Those types of assertions would need to be distinguished anyway, so you
could decide what to do depending on if you recognised the assertion as
being of a special or not.
Pete.
--------------------------------------------------------------------------
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