[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