An hour and a half ago, Ian Price wrote: > Eli Barzilay <e...@barzilay.org> writes: > > >> the macro is used. Examples include an 'if' form that binds the > >> result of the test to an 'it' binding, or class macros that > >> introduce a special 'self' binding. > > > > The `abort' example is also popular, probably even more than `it'. > > I think that there are practical uses of that (eg, a function with > > a `return' keyword), whereas anaphoric conditionals are more of an > > academic exercise that I don't think gets used in practice (at > > least in Schemes). > I mentioned it mostly because it is a traditional example, but I've > swapped it for the lambda with return. > > I'm not sure how popular aif is in general (I prefer a clojure style > if-let), but I do know it is in the popular miscmacros egg for > chicken.
(I suspect that its popularity comes from these examples...) > >> ** define-syntax-parameter keyword transformer [syntax] > >> Binds keyword to the value obtained by evaluating transformer as > >> a syntax-parameter. > > > > The keyword is bound to the value of the `transformer' expression. > > (Evaluated at the syntax level, in Racket's case, I don't know if > > Guile has separate phases yet...) It's not evaluated as a syntax > > parameter, just like parameters. > This is a case of syntactic ambiguity in English, I meant it as > "Binds keyword to (the value obtained by evaluating transformer) as a > syntax-parameter." Yeah, I figured that. It's generally pretty hard to describe such things accurately because of natural language conventions. I run into such problems in my course very frequently. > I've just dropped the "as a syntax-parameter" part. That works fine. > In case anyone else has any comments, the modified version is > included below. Now I'm off to learn about texinfo :) (Ugh, medieval programming...) -- ((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay: http://barzilay.org/ Maze is Life!