當從IronPython與F#庫進行交互時,Python函數對象在傳遞給接受函數的F#接口時似乎不會自動轉換爲標準F#FastFunc函數對象作爲參數之一。在F#中將System.Func <>轉換爲FastFunc <>
另一方面,如果接口是其中之一,那麼Python函數對象將被很好地轉換爲System.Func> <>。 也就是說,這是不是從蟒蛇容易調用:
let myFunc (f: float->float) =
f(3.5)
,而下面的工作完美:
let myFunc2 (f: System.Func<float, float>) =
f.Invoke(3.5)
所以我的問題是,如果我想能夠很容易地養活我的F#-functions Python函數對象,有什麼方法可以將一個System.Func對象轉換爲一個FastFunc對象(爲了能夠將一個精簡的接口轉換爲IronPython/C#等,但能夠使用提供的函數作爲常規的F#函數更深入的lib)?
感謝, 裏卡德
PS 我沒有足夠的代表,以創建一個新的標籤,也許有人可以,如果你覺得合適
謝謝你,非常完美。大! – Rickard 2010-01-03 07:32:27