Prelude Haskell có một chức năng hữu ích mà giao dịch hoán đổi đối số của một hàm: http://zvon.org/other/haskell/Outputprelude/flip_f.htmlcần phải thực hiện lật Haskell cho Proc
tôi cần phải làm như vậy trong Ruby. Thay vì chỉ định nghĩa một phương thức tùy chỉnh, tôi muốn khỉ vá lớp Proc
để tôi có thể sử dụng flip
cùng với Proc#curry
. Một cái gì đó như
f = lambda {|x, y| [x, y]}
g = f.flip.curry.(2)
để cung cấp giá trị cho y
.
Tôi không biết cách mở lại Proc
lớp học để làm điều đó.
Tôi đang bối rối về sự 'chút curry', không phải là họ trực giao vấn đề? bạn có thể thử lật các đối số của một proc bất kể bạn muốn cà ri hay không sau đó. – tokland
điều này là chính xác. currying và flip là độc lập. – akonsu