Tôi đang cố gắng hiểu cách thức hoạt động của curry trong lập trình hàm. Tôi đã trải qua wiki và một vài câu hỏi về cùng trên SO.Bạn cần trợ giúp để hiểu việc sử dụng currying bằng cách sử dụng đóng cửa groovy?
Need help understanding lambda (currying)
Tôi hiểu currying đó là tất cả về việc tách một hàm mang theo n đối số vào n hoặc ít chức năng với một đối số mỗi. Tôi hiểu về mặt lý thuyết nó nhưng tôi không thể kết nối các dấu chấm trong khi mã hóa cho cùng một. Có lẽ đó là sự thiếu kiến thức của tôi trong các ngôn ngữ lập trình hàm hoặc C# (như nhiều câu trả lời trong các câu hỏi trên giải quyết).
Dù sao, tôi hiểu rõ ràng về trình biên dịch & java. Vì vậy, tôi đã cố gắng để có được một phác thảo cho các chức năng tiêu chuẩn add(a,b)
trong groovy nhưng tôi không thể hoàn thành nó.
def closure = { arg ->
// ??
}
def add(anotherClosure , a){
return closure // ??
}
Ai đó có thể giúp tôi hiểu cà ri bằng cách sử dụng đóng cửa không?
Tôi nói về Lập trình chức năng với Groovy trong hội nghị. Bạn có thể xem [slide về currying với Groovy] (http://www.slideshare.net/arturoherrero/functional-programming-with-groovy/32) –
Đã đi qua tất cả các trang trình bày. Một thông tin rất hay. :) –