4 ms·
Ruby Currying
- raganwald 17y agoAs mentioned elsewhere, is this currying? Or partial application? Currying: lambda { |x,y| x + y }.curry => lambda { |x| lambda { |y| x + y } } Partial Application lambda { |x, y| x + y }.apply(2) => lambda { |y| 2 + y } And given #curry, #apply is trivial: class Proc; def apply(param); self.curry.call(param); end end ...or at least, that's my understanding...
- grandalf 17y agoi think you're right.
- grandalf 17y agoAfter learning about these concepts in Haskell, the Ruby code seems downright ugly (I never thought I'd say that)... but still probably quite useful in some cases.
- khelll 17y agoraganwald, u r totally right, i have updated the post to show the diff.