微软新的F#编程语言提供了函数式编程(一流的词法闭包和尾部调用)与高效的并发垃圾收集器的强大组合,这使得利用多核变得很容易。
据我所知,OCaml、Haskell、Erlang以及所有免费的Lisp和Scheme实现都没有并发GC。Scala和Clojure有一个并发的GC,但没有尾部调用。
所以似乎没有结合这些特性的开源编程语言。对吗?
发布于 2009-12-03 21:35:34
Erlang有一个无共享模型,其中each process has it's own garbage collector。无论您认为这是否是并发,都由您决定。但随着进程数量的增加,它确实具有很好的伸缩性。
发布于 2008-11-10 13:26:30
最新版本的GHC支持并行GC。请参阅release notes。
发布于 2008-11-11 18:36:39
Scala有一些尾递归优化。但是让SISC scheme来做所有的事情。
https://stackoverflow.com/questions/277812
复制相似问题