[m-rev.] for review: support different clauses for different modes

Simon Taylor stayl at cs.mu.OZ.AU
Wed May 16 15:48:42 AEST 2001


On Wed, May 16, 2001 at 06:17:58AM +1000, Fergus Henderson wrote:
> Estimated hours taken: 8
> Branches: main
> 
> Add support for using different clauses for different modes of a
> predicate or function, using mode annotations on the clauses.
> 
> compiler/make_hlds.m:
> 	Add support for mode annotations on clauses.
> 
> compiler/module_qual.m:
> 	Add new routine qualify_clause_mode_list, for use by make_hlds.m.
> 
> compiler/mode_errors.m:
> 	Export output_mode_decl, for use by make_hlds.m
> 
> compiler/purity.m:
> 	Treat procedures with different clauses for different modes
> 	as impure, unless promised pure.
> 
> compiler/notes/compiler_design.html:
> 	Specify when module qualification of modes in
> 	clause mode annotations is done (in make_hlds.m).
> 
> NEWS:
> doc/reference_manual.texi:
> 	Document the new feature.

Test case?

I'd also like to see a test case in tests/hard_coded where a predicate
which uses different clauses for different modes is written to a `.opt' file
then inlined in an importing module. The code in intermod.m to write
clauses currently doesn't handle this feature.

Simon.
--------------------------------------------------------------------------
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