Maybe via " Cross-Phase Persistent Module Declarations" http://docs.racket-lang.org/reference/syntax-model.html#%28part._cross-phase._persistent-grammar%29 ?
Thu, 24 Jul 2014 21:24:20 -0400 от "Alexander D. Knauth" <[email protected]>: >How can I make an identifier that will have a certain binding no matter what >phase level it's referenced at? > >For example if I’m making a reader extension that will produce a lambda >expression, how do I make it so that the lambda expression will be able to >exist at any phase level? > >For example this program using #lang rackjure doesn’t work: >#lang rackjure >(require (for-meta 1 racket/base) > (for-meta 2 racket/base) > (for-meta 3 racket/base) > (for-meta 4 racket/base) > ) > > >#λ(* 2 %) ; works, produces approx. (lambda (%) (* 2 %)) >(begin-for-syntax > (begin-for-syntax > #λ(* 2 %) ; lambda: unbound identifier at phase 2; > ; ; also, no #%app syntax transformer is bound in: lambda > )) > >Is there any way to construct an identifier that would be bound to lambda from >racket/base no matter what phase level it’s used in? > > >____________________ > Racket Users list: > http://lists.racket-lang.org/users > -- Roman Klochkov
____________________ Racket Users list: http://lists.racket-lang.org/users

