[m-rev.] for review: Updating Documentation for Promise Ex Declarations

Lars Yencken lljy at students.cs.mu.oz.au
Fri Feb 22 15:12:24 AEDT 2002


Hi,

This is pretty trivial, but could someone please check over it?

Thanks,
Lars

===================================================================

Estimated hours taken: 0.2

compiler/notes/promise_ex.html:
	Updating the development status of promise ex declarations.


Index: compiler/notes/promise_ex.html
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/notes/promise_ex.html,v
retrieving revision 1.1
diff -u -r1.1 promise_ex.html
--- compiler/notes/promise_ex.html	8 Feb 2002 02:27:12 -0000	1.1
+++ compiler/notes/promise_ex.html	22 Feb 2002 03:52:05 -0000
@@ -89,30 +89,40 @@
 	<li>	they are parsed and entered into the parse tree (prog_io.m)
 	</ul>
 <li>	they may be pretty printed (mercury_to_mercury.m, prog_out.m).
-<li> 	(*) they are error checked, and entered in to the HLDS as 
+<li> 	they are error checked, and entered in to the HLDS as 
 	dummy predicates
 	<ul>
-	<li>	<i>definition of promise ex table as part of HLDS </i> 
-		(hlds_module.m)
-	<li>	<i>operations on promise ex table</i> (hlds_data.m) 
 	<li>	error checking (make_hlds.m)
 	<li>	entering of declarations into the HLDS as dummy predicates 
 		(make_hlds.m)
 	</ul>
-<li>	(*) go through typechecking as predicates; after typechecking they 
+<li>	go through typechecking as predicates; after typechecking they 
 	are removed from processing as predicates and entered into the
-	promise_ex_table of the HLDS
+	appropriate table in the HLDS
 	<ul>
-	<li>	<i>predicates for finishing promise ex declaration processing
-		defined</i> (post_typecheck.m)
 	<li>	post typechecking processing initiated for promise ex 
 		declarations (purity.m)
+	<li>	promise_exlusive and promise_exhaustive declarations are
+		indexed by the predicate calls made in them in the exclusive 
+		table (post_typecheck.m)
+	<li>	<i>definition of exclusive table as part of HLDS, and
+		operations on the table </i> 
+		(hlds_module.m)
+	<li>	(*) where a promise_exhaustive declaration is paired with a
+		promise_exclusive declaration, they are merged into a
+		promise_exclusive_exhaustive declaration; otherwise the
+		promise_exhaustive declartion is entered in the exhaustive
+		table of the HLDS (post_typecheck.m)
+	<li>	(*) <i>definition of exhaustive table as part of HLDS, and
+		operations on the table </i> 
+		(hlds_module.m)
 	</ul>
 <li>	(*) exclusivity information is used during switch detection, and 
 	where it leads to a full switch being made, applicable exhaustiveness 
 	information is also used (switch_detection.m)
 <li>	(*) exhaustiveness information is used during determinism analysis
-	(det_analysis.m)
+	(det_analysis.m) or as an add-on to switch detection
+	(switch_detection.m)
 </ol>
 
 </body>
--------------------------------------------------------------------------
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