Concurrency architecture for D2

retard re at tard.com.invalid
Fri Jan 8 13:06:44 PST 2010


Fri, 08 Jan 2010 12:33:06 -0800, Walter Bright wrote:

> retard wrote:
>> If only 2 of the top 30 c++ experts understand concurrency models, what
>> makes you think that D programming community, mostly consisting of
>> novice/ hobbyist/student programmers have any better luck?
> 
> That is why the flagship of doing concurrency in D will be message
> passing, which is how Erlang, Scala, and Go do concurrency. Using
> message passing will avoid any need by the user to understand sharing,
> sequential consistency, and synchronization issues.
> 
> Sharing and synchronization will be for the advanced programmer.

My point was, what makes D community members more capable of reasoning 
about these issues. I bet it's obvious to the top 30 C++ experts that 
other kinds of concurrency models exist than multi-threaded shared memory 
abstraction or SIMD. The problem isn't just about coming up with a model 
-- if it helps you in any way, go ahead and browse old academic papers. 
E.g. CSP was invented 32 years ago.

There are message passing libs for C++, too, for instance MPI. Making the 
feature built-in doesn't automatically make creating concurrent 
applications easier. For instance message passing is harder to use than 
implicit parallelism and auto-vectorization when doing parallel 
processing in loops.



More information about the Digitalmars-d mailing list