On Wed, 2009-05-27 at 05:49 +0200, Michele Simionato wrote: > http://www.artima.com/weblogs/viewpost.jsp?thread=249198
The curried-lambda in that article is broken (IMO) because (curried-lambda () b b* ...) expands to (begin b b* ...) This expansion also breaks (define-curried (f) ---). Even though no one should directly use curried-lambda or define-curried with zero arguments, it's still broken because macros should be fully general so they can be built upon by, say, other macros which expand to using curried-lambda or define-curried and the zero-argument case can happen. Also, I consider it inadequate because it doesn't handle "rest" arguments and because it requires applying one argument at a time (like Ramana mentioned). -- : Derick ----------------------------------------------------------------
