[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Syntax Parameters documentation for guile
From: |
Eli Barzilay |
Subject: |
Re: Syntax Parameters documentation for guile |
Date: |
Tue, 3 Jan 2012 19:33:01 -0500 |
An hour and a half ago, Ian Price wrote:
> Eli Barzilay <address@hidden> 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!
- Re: Syntax Parameters documentation for guile, Ian Price, 2012/01/03
- Re: Syntax Parameters documentation for guile,
Eli Barzilay <=
- Re: Syntax Parameters documentation for guile, Andy Wingo, 2012/01/06
- Re: Syntax Parameters documentation for guile, Ian Price, 2012/01/06
- Re: Syntax Parameters documentation for guile, Ian Price, 2012/01/07
- Re: Syntax Parameters documentation for guile, Andy Wingo, 2012/01/07
- Re: Syntax Parameters documentation for guile, Ian Price, 2012/01/07
- Re: Syntax Parameters documentation for guile, Andy Wingo, 2012/01/08
- Re: Syntax Parameters documentation for guile, Eli Barzilay, 2012/01/06