【问题标题】:Do I need to install any additional library to use Array.Parallel.map in F# running on Mono?我是否需要安装任何其他库才能在 Mono 上运行的 F# 中使用 Array.Parallel.map?
【发布时间】:2012-03-09 16:14:02
【问题描述】:

我从源代码构建了 mono-2.10.2,并从 http://fsxplat.codeplex.com/ 安装了 fsharp 包。但是我有这个程序在 Windows 上运行没有错误,但在 Linux/Mono 上没有。它抱怨以下错误:

error FS0039: The value, onstructor, namespace or type 'Parallel' is not defined

似乎仍然缺少并行扩展。

【问题讨论】:

  • 虽然这对您来说似乎是一个显而易见的问题,但对我们来说却并不明显。 1.) 分享一些源代码 2.) 您在安装 F# 时遵循了哪些说明? 3.) 你拉的是哪个版本的 Mono——树的顶端还是稳定版本?
  • 你有什么 Mono 版本?
  • 在 Windows 上,我可以直接在 F# 交互式 fsi.exe 上执行 Array.Parallel.map ((+) 2) [| 1 |];;,但在 Linux 上不行。我从fsxplat.codeplex.com 安装了 fsharp 软件包。我相信并行扩展没有正确安装?不知道如何检查。
  • 来自ftp.novell.com/pub/mono/sources-stable的最新mono-2.10.2.tar.bz2。
  • 缺少并行扩展可能是对的。输入open System.Threading.Tasks;;,在fsi 中检查它。为什么不使用package releases? Mono 2.10.x 软件包版本已经包含 F#。

标签: .net f# mono parallel-processing


【解决方案1】:

原则上,不会。

我已经安装了Mono 2.10.4 package release,它默认包含 F# 包。并行扩展工作正常,所以我可以使用Array.Parallel.map

在您的情况下,我的猜测是 fsharp package 已过时并且不包含并行扩展。您应该使用github 中的最新且对 Mono 友好的版本从源代码安装 F#。可以找到这样做的详细说明here

【讨论】:

  • (fsharp 代码和扩展的碎片是一个难题)
  • @pad 确实 fsharp 包不包括并行扩展。我从源代码安装,它工作。
猜你喜欢
  • 2011-08-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多