How is it that the definition of (struct my-name (x y)) can bind *my-name*both as a #<procedure:my-name> at runtime and a transformer-binding *my-name* that at compile time (via syntax-local-value) produces #<procedure:self-ctor-checked-struct-info>.?
Or, put another way, how can I define a transformer *my-fn* that produces syntax, but that also exposes hidden meta-data under the same binding to other macros that might wish to know about the binding at compile time? I'm specifically wondering how the overloading works. Is it some clever use of prop:procedure? Thanks. -- Talk to you soon, Scott Klarenbach PointyHat Software Corp. www.pointyhat.ca p 604-568-4280 e sc...@pointyhat.ca 200-1575 W. Georgia Vancouver, BC V6G2V3 _______________________________________ To iterate is human; to recur, divine
____________________ Racket Users list: http://lists.racket-lang.org/users