[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Scheme-reports] Formal Response #382: Allow "if" to accept arbitrarily many if-then pairs

On Thu, 11 Oct 2012 22:11:12 -0400, John Boyle  
<johnthescavenger@x> wrote:

> What I want is the intermixing of runtime and compilation time that the  
> phase separation seems determined to prevent (e.g. define a macro, use  
> that macro in the definition--not expansion--of another macro, use that  
> macro in the definition of another macro, and so on). I tried this a  
> long time ago and became convinced it was impossible without insane  
> workarounds.

I am interested in knowing how Racket deals with this. From what I can  
tell, this is no problem on systems like Vicare or Chez Scheme. However, I  
am certain that Racket will let you do this if you take those definitions  
and move them into a separate library, rather than defining them inline.  
Specifically, I know that you can do this in any R6RS compliant system  
(Racket provides an R6RS mode) just by defining your definitions that you  
want to use at any meta phase in a separate library and then importing  
that library as appropriate. In Larceny and Racket, I believe that you  
will need to specify your phases explicitly. In Vicare and Chez, or other  
implicit phasing systems, this is not necessary.

Aaron W. Hsu | arcfide@x | http://www.sacrideo.us
Programming is just another word for the Lost Art of Thinking.

Scheme-reports mailing list