On Wed, 2009-05-27 at 12:02 +0300, Abdulaziz Ghuloum wrote:
>  > (define-curried (f3 x1 x2 x3) "third-order")
>  > (((f3 1) 2) 3)
> "third-order"
>  > (define-curried (f2 x1 x2) "second-order")
>  > ((f2 1) 2)
> "second-order"
>  > (define-curried (f1 x1) "first-order")
>  > (f1 1)
> "first-order"
>  > (define-curried (f0) "zero-order")
>  > f0
> "zero-order"
> 
> It's bizarre, but it has to be true! :-)

When I see (curried-lambda (a b) ---), I'm expecting a procedure which
needs two arguments.  When I see (curried-lambda () ---), I'm expecting
a procedure which needs zero arguments; I'm not expecting to get the
value(s) returned from calling the procedure.  Same for define-curried.
But whatever.  To each their own Scheme planet.

-- 
: Derick
----------------------------------------------------------------

Reply via email to