Stupid me.  REQUIRING is done by DEMAND (as in NEED). So the strange thing is 
that you gain access to a module local identifier via the store. I still sense 
something is wrong with the store phases. 




On Jun 21, 2010, at 4:01 PM, Sam Tobin-Hochstadt wrote:

> On Mon, Jun 21, 2010 at 3:58 PM, Matthias Felleisen
> <matth...@ccs.neu.edu> wrote:
>> 
>> I still don't understand how the #'x reference is actually exported from m 
>> to n. I understand the store part but why is the for-value require of 'm 
>> needed? If you remove it you get a type-checking error (add1 applied to 
>> False).
> 
> If you don't have the `require' of 'm, then the box is never mutated
> in the store of the expansion time of 'n, leaving it with the initial
> value #f. The `begin-for-syntax' in 'm is what does the exporting, by
> mutating the shared box.
> -- 
> sam th
> sa...@ccs.neu.edu

_________________________________________________
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev

Reply via email to