开发者

Parallel programming languages which look deterministic?

Are there any programming languages where the system parallelizes the program without any noticeable differences for the programmer?

That is, the programmer writes a linear, deterministic program, without开发者_运维百科 any additional tags or meta-data, and the underlying system parallelizes all of the work.


haskell has a host of parallelism and concurrency features. STM has been popularized and much-discussed since being implemented by haskell. you might also like Go, it has a channel feature that may be of interest.


Fortress kind of does this, I think.


I think you mean procedural, and not deterministic. In C#, there is some work underway to enable an asynchronous programming model which more closely models the procedural programming approaches we're used to. See Jeffrey Richter's IAsyncResult and the new Async CTP from Microsoft.

F# and other functional languages have had comprehensive asynchrony models for some time. Ultimately you still have to adhere to the baisc tenets of concurrency: isolation, immutability, and synchronization (usually in that order of resort). I recommend the several whitepapers at the above site for a glimpse of how Concurrency should be more accessible--at least in C#--in the near future.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜