[alexandria-devel] Re: Review cycle 1: binding constructs

Tobias C. Rittweiler tcr at freebits.de
Sat May 31 14:17:20 UTC 2008


"Nikodemus Siivola" <nikodemus at random-state.net> writes:

> On Sat, May 31, 2008 at 4:03 PM, Tobias C. Rittweiler <tcr at freebits.de> wrote:
>
> > I'd suggest to throw them away, and implement something like Erik
> > Naggum's WHEREAS outside of Alexandria instead.
>
> Can you explain you reasoning?

The reasoning is as following:

 a) The macros should short-circuit because if they don't, they're just
 sugaring over something that can be written directly without much
 effort or loss of aesthetics (YMMV.)

 b) If they short-circuit, Naggum's WHEREAS is the technical superior
 solution, as it'll also cover MULTIPLE-VALUE-BIND, for instance.


> >  (when-let ((foo  (frob1))
> >             (bar  (frob2))
> >             (quux (frob3))
> >   ..body..)
>
> Do you have a use case from real code?

Not really, because in real code, matters are more complicated warranting
a more complex macro. Hence my pledge for removal.

Do you have a use case for the non short-circuiting behaviour? 

  -T.




More information about the alexandria-devel mailing list