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

AndrevanTonder andre at het.brown.edu
Mon Mar 19 09:36:11 EDT 2007


On Sun, 18 Mar 2007, Abdulaziz Ghuloum wrote:

> On Mar 18, 2007, at 10:06 AM, AndrevanTonder wrote:
>
>> Do you intend this to apply to all variable definitions or just to those 
>> that are exported?
>
> I think the restriction applies to all "immutable" bindings since all of them
> *are* exported (explicitly or implicitly).
>
>> If one is going to apply this also to unexported definitions,
>
> The only unexported definitions are those that are assigned (via set!) in the
> body of the defining library.  I don't think the restriction needs to apply 
> to these guys (but could be wrong).

These are the ones I was referring to.  I don't think so either (but could also 
be wrong).  It would seem inconsistent to allow mutable variables to be mutated 
via set! but not via multiple returns to their definitions.

I was also referring (implicitly) to toplevel variables.  No toplevel variable 
is ever exported, so there does not seem to be a reason for applying the 
restriction to them as has been argued here.

Andre



More information about the r6rs-discuss mailing list