[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: What?



In article <874re161xr.fsf@meo-dipt.andreas.org>,
 Andreas Bogk <andreas@andreas.org> wrote:

> > (defmethod read-lines ((stream stream))
> >   (loop for line = (read-line stream nil nil)
> >         while line collect line))
> 
> Hehe, loop is quite a nifty macro :).

The CL "loop" macro is one of the reasons that I think the decision to 
go with infix syntax for Dylan is the correct one.  When you want to 
create complex syntax with many options, pure S-expressions just don't 
cut it and you need actual *syntax*.  This goes not only for "loop" but 
also for things such as declaring classes and even argument lists.

Once you've got the general infix syntax macro machinery there, why not 
use it for all the syntax in the language?

-- Bruce