ara.t.howard / noaa.gov wrote:
> 
> given some of the recent discussions on threads i thought some of you might
> like this
> 
>   
> http://www.computer.org/portal/site/computer/menuitem.5d61c1d591162e4b0ef1bd108bcd45f3/index.jsp?&pName=computer_level1_article&TheCat=1005&path=computer/homepage/0506&file=cover.xml&xsl=article.xsl 
> 
> 
> -a

Mildly interesting. I think the popularity of using threads comes from 
the fact they're a much easier concept to wrap your head around. They 
also let you introduce parallelism as an afterthought - dispatching 
tasks into a worker thread pool on places where you can hang on IO isn't 
really complicated, etc. Deterministic concurrency models require a more 
premeditated approach, and more effort to achieve the same levels of 
parallelism in a program. You practically have to consider "thread 
synchronisation" (e.g. the message passing itself in that model) as a 
fundamental design element instead of an edge case to keep from breaking.

Deterministic concurrency might be The Right Thing in being less 
error-prone, but sometimes the Hack That Works is more practical. (Cf. 
ML-like type system "versus" latent typing.)

This reminds me, I should spend some time in Erlang and Nemerle land.

David Vallner