我正在从Mono 3.0和F#3.0开始,从2008年开始开发F#应用程序TrueSkill。我得到的两个错误是
fList |> ResizeArray.iter (fun f -> f.ResetMarginals())
let sumLogS = fList |> ResizeArray.fold_left (fun acc f -> acc + (f.LogNormalisation ())) 0.0

对于F#1.9,ResizeArray来自PowerPack。显然,现在github上有一个PowerPack。但是标准的Mono文档显示ResizeArray<T>只是List<T>的别名。我是否需要获取原始的ResizeArray,如果是的话,我将如何使用ResizeArray.fs从PowerPack中获取它呢? ListResizeArray之间的当前关系是什么?

最佳答案

为了澄清,ResizeArray<'T>也是.NET中List<'T>的别名。 F#PowerPack仅提供ResizeArray模块中的高阶函数。

由于不依赖于this module,建议将ResizeArray.fs直接复制到您的项目中。您可能必须更改一些函数名称以匹配新的ResizeArray模块,例如将fold_left更改为fold,将fold_right更改为foldBack

关于f# - 如何为旧版F#应用程序提供ResizeArray?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13061952/

10-11 17:16