--- This message is a formal comment which was submitted to formal-comment_at_r6rs.org, following the requirements described at: http://www.r6rs.org/process.html --- Name : Andre van Tonder Email : andre at het.brown.edu Type : simplification Priority : medium Component : libraries Version : 5.91 Pages : 24 Dependencies: None Summary: -------- Libraries can be greatly simplified by removing current double choice of phase semantics. Description: ------------ The current phase semantics is very complicated and the choice of two separate semantics hinders portability. A simpler semantics is already effectively implemented by two of the reference implementations. This semantics shares one set of bindings between all the levels into which they are imported. The visit/invoke semantics becomes HUGELY simplified in this case. -------------------------------------------------- Note that the following is *equivalent* to the current draft when the bindings are shared. It is what the "dybvig-ghuloum" and "vanTonder" implementations already effectively do. -------------------------------------------------- To visit a library: * Visit any library that is imported by this library and that has not yet been visited. * For each k >= 1, invoke any library that is imported by this library for .... (meta k), and that has not yet been invoked. * Evaluate all syntax definitions in the library. To invoke a library: * Invoke any library that is imported by this library and that has not yet been invoked. * Evaluate all variable definitions and expressions in the library.Received on Tue Nov 14 2006 - 10:49:25 UTC
This archive was generated by hypermail 2.3.0 : Wed Oct 23 2024 - 09:15:00 UTC