[m-rev.] for review: adding promise ex declarations to the hlds with error checking

Lars Yencken lljy at students.cs.mu.oz.au
Mon Feb 18 14:07:31 AEDT 2002


> But not promise_exhaustive?  Why not?

We can use exclusivity information during switch detection to find more
switches. When exhaustiveness comes with exclusivity, it's also useful
during switch detection, to signal that if we find a certain switch then it
cannot fail. Exhaustiveness information when it's not paired with
exclusivity isn't even dealing with switches any more; it's giving a
property of a general disjunction.

I'm trying to get just the switch detection part done before my studentship
is up, because that's the most useful part. What will remain to be done for
promise_exclusive declarations is:
	- filter out declarations paired with exclusivity declarations and
	  add the information to the exclusive table for use in switch
	  detection
	- store the remainder in a separate table in the hlds, and make use 
	  of them somehow (determinism checking? something similar to 
	  switch detection?)

I'm not at all likely to get around to that before I finish, so I'm leaving
it for someone else.

> What about documentation in the reference manual?

I had intended to document whatever I got working. I did add a document in 
compiler/notes during my last change however, and that goes over the syntax 
that we discussed on the mercury-developers mailing list.

Lars
--------------------------------------------------------------------------
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