Mik*_*ike 7 .net erlang f# multithreading axum
这可能是其他人看到的问题,但我正在尝试找到一种可以在.net平台上运行的并行编程(或支持语言)的语言.
我一直在erlang中进行侧面开发以了解语言,并且喜欢获得稳定的并发甚至分布式系统是多么容易.它引导我使用scala,它也有一个使用actor的好系统,但scala.net目前似乎没有这个功能(当然这是一个并发系统与分布式系统).我看过的两种.net语言是Axum和F#.
这些是我唯一的选择吗?还有其他人吗?而且,如果他们是唯一的选择,每个的优点/缺点是什么?
Axum是一个研究项目.一个真正的研究项目,只有它的想法才会最终产品.(与整体产品化的F#不同.)我甚至不确定许可证是否允许使用它来开发生产应用程序.
F#是个不错的选择.
Clojure也可以在CLI上运行,也是一个不错的选择.
Scala的CLI端口目前正在复活(实际上是微软的官方资金),而Scala的Actor库(内置的一个,以及Akka)都非常好.
关于@ wmeyer上面的评论:Scala本身没有任何分布式编程的规定.(Clojure也没有.)两者通常都依赖于为此目的而存在的无数Java框架,例如Terracotta.但是,Akka 确实有用于分布式编程的Remote Actors,而Akka在很大程度上与内置的Scala Actor库API兼容,可以实现平滑过渡.
Erlang会很酷.Kresten Krab Thorup目前正在开发Erjang,这是JVM上的一个Erlang实现,他有一些非常令人印象深刻的结果:在HotSpot上运行,Erjang与BEAM的比例相当,有时甚至更好.例如,在具有10000个进程的(in)着名过程环基准测试中,Erjang启动的速度仅比BEAM慢,但是当你重复运行几次并且JIT启动时,它会在大约3次运行后超过BEAM(并且好奇地,BEAM在4次运行后开始减速).
我很确定你可以在DLR上构建一个"#rlang"和同样表现良好的TPL.
| 归档时间: |
|
| 查看次数: |
968 次 |
| 最近记录: |