[r6rs-discuss] [Formal] Replacing the import's "for" syntax with implicit phasing

Abdulaziz Ghuloum aghuloum at cs.indiana.edu
Thu Nov 16 21:21:38 EST 2006


On Nov 16, 2006, at 12:50 PM, Felix Klock wrote:

> On Nov 15, 2006, at 1:03 AM, Abdulaziz Ghuloum wrote:
>
>> Now that we have defsyntax, we can use it in another library:
>>
>> (library definlined
>>    (export definlined)
>>    (import (for defsyntax ???))
>>    (defsyntax#0 (definlined name value)
>>      (defsyntax#1 (name) value)))
>>
>> Spend a minute or two to try to puzzle out the import phases for
>> defsyntax.
>
> My initial thought is that the import phase for defsyntax is just 
> 'run'; yes, defsyntax appears in the right hand side of the macro 
> definition of definlined, but only as part of something that is going 
> to go into the produced code when the use of definlined is expanded, 
> not something that is going to be run at expansion time of definlined.

I believe you are right--it could've been just 'run'; I think, though I 
don't remember my initial reason.  Maybe my mind was out of phase at 
that time!  But now that my phases are inferred correctly, I don't have 
to worry anymore. :-)

Aziz,,,




More information about the r6rs-discuss mailing list