[r6rs-discuss] [Formal] eliminate library export immutability loophole

From: R. Kent Dybvig <dyb>
Date: Sun Mar 11 21:41:53 2007

---
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:      Kent Dybvig
email:     dyb_at_cs.indiana.edu
type:      defect
priority:  minor
component: libraries
version:   5.92
Summary: eliminate library export immutability loophole
Description:
The present description of libraries leaves open the possibility that a
continuation grabbed within a variable definition's right-hand-side
expression and subsequently invoked might cause the reinitialization, with
different values, of some or all of the local counterparts of the exported
variables, effecting implicit assignments to variables that are supposed
to immutable.  Since the effect of returning twice to the continuation of
the last body expression is unspecified, this may also result in implicit
assignments to the exported variables.  If not, the values of the exported
variables and their local counterparts may differ.
While explicit assignments to immutable variables are syntax violations,
no exception is presently associated with this implicit form of
assignment.
Proposal:
Add new wording to the effect that the continuation of the right-hand-side
expression of a library variable definition should not be returned to more
than once and that implementations either "should" or "must" raise an
exception if this occurs.
Received on Fri Mar 09 2007 - 11:31:00 UTC

This archive was generated by hypermail 2.3.0 : Wed Oct 23 2024 - 09:15:01 UTC