4 ms·
> Also note that LOOP is an S-expression. Well, it's body doesn't look like s-expressions to me, that's the point. And there's 0 reasons why they shouldn't be.
by maydup-nem 5y ago
> Also note that LOOP is an S-expression.
Well, it's body doesn't look like s-expressions to me, that's the point. And there's 0 reasons why they shouldn't be. But, conversely, there are real benefits to them being sexps. Coherency, for one.
It's not the first time I hear this defense: "it's part of CL standard therefore it's lispy", "it's just a DSL". But these are qualities, aren't they? Some things will look lispier that other things. Some DSLs are better designed.
Look at the DO keyword. Why exactly do I need it? Why do I need :when or :if when I have cl:when and cl:if?
> don't have to load a library to use it, and I don't have to tell my colleagues
That's a valid point, this is the price you would have to pay (and don't forget importing the symbols!). But you just might have to gain more in the long term, if you switch. I for one, don't mind, but It Depends TM.
If I had a large project nearing its completion that uses LOOP, i wouldn't switch to iterate, sure. But on a new project? I might as well convince everybody else just to try it out for the hell of it.