1
在Opa中,可以部分應用函數。但是,我想提供一個函數及其所有參數,並返回一個不帶參數的函數。例如:Opa:高階函數應用
function make-thunk(f, a) { function() { f(a) } }
上面的代碼工作正常,但它有一個問題:它只適用於只需要一個參數的函數。我很好奇Opa是否有可能使上面更通用,所以這個函數可以用於任意形式的函數。
我無法在Opa API,論壇,IRC,Github或SO上找到apply-(scheme)或call-(prolog)類似函數的信息,所以在這裏我希望我錯過了某個地方的某些東西。 ;-)(有@lazy關鍵字的一些痕跡,但沒有解釋或文檔,所以我沒有保留參考,對不起。)
爲了進一步闡明/說明:如果Opa是計劃,我會寫下面的代碼:
(define (make-thunk f . args)
(lambda() (apply f args)))
@lazy大概是在IRC上提到的,因爲我在我的瀏覽器歷史記錄中找不到相關鏈接:-) – rdewaele