我的意思是:当您自由设计应用程序副作用等时,F#代码会自动分布在所有内核中吗?
不,我不敢.鉴于F#不是一种纯粹的功能语言(在最严格的意义上),我相信这样做会相当困难.在F#中充分利用并行性的主要方法是使用异步工作流(主要通过我认为的异步模块).在.NET 4.0中引入的TPL(任务并行库)将在F#中扮演类似的角色(尽管它可以在所有.NET语言中同样使用),尽管我不能说我'我确定它将如何与现有的异步框架集成.也许微软会简单地建议将TPL用于所有事情,或者他们可能会将两者作为一种选择,最终将成为事实上的标准......
无论如何,这里有一些关于F#中异步编程/工作流的文章,可以帮助您入门.
http://blogs.msdn.com/dsyme/archive/2007/10/11/introducing-f-asynchronous-workflows.aspx
http://strangelights.com/blog/archive/2007/09/29/1597.aspx
http://www.infoq.com/articles/pickering-fsharp-async
F#不会让它自动化,它只是让它变得简单.
还有另一个机会链接到卢卡的PDC谈话.从52:20开始的8分钟是F#异步工作流程的一个很棒的演示.它摇滚!