首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >哪些函数式语言实现允许线程并行运行?

哪些函数式语言实现允许线程并行运行?
EN

Stack Overflow用户
提问于 2009-07-12 21:30:57
回答 8查看 932关注 0票数 5

OCaml GC强加了一个全局锁,该全局锁阻止修改器(线程)并行运行,尽管它们可以并发(交错)运行。我相信这同样适用于SML/NJ和MLton,但不适用于PolyML、GHC、F#、Clojure和Scala。

还有哪些函数式语言实现允许线程并行运行?

EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2009-07-12 21:46:29

我很高兴地告诉你,你是对的,基于CLR的F#根本不会受到这种限制,相反,它受益于多线程的特定功能,包括async workflowsthe mailboxprocessor和即将推出的精彩的(.NET 4.0)任务并行库。

票数 5
EN

Stack Overflow用户

发布于 2009-07-13 00:31:55

有很多很好的实现。目前,Haskell人员似乎获得了最好的结果(参见ICFP 2009 paper by Simon Marlow and othersHaskell Symposium 2009 paper by Donnie Jones and others)。Erlang紧随其后,特别是如果你想进行分布式的话。

在6到12个月内,答案可能会发生变化:-)

票数 11
EN

Stack Overflow用户

发布于 2009-07-12 21:35:43

通过Data Parallel Haskell实现的Haskell supports parallel threads

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1116974

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档