dsimcha wrote:
== Quote from Walter Bright ([email protected])'s article
hasenj wrote:
Walter Bright wrote:
Message passing for concurrency is a solid solution for many types of
concurrency problems, but it isn't a panacea.
Do you think D would benefit if you add this (or similar) feature to it?
Sean is working on a message passing (CSP) package for D. I'm not
convinced it needs to be a core language feature, though.
This is true. After I created ParallelFuture (the lib w/ parallel foreach, map,
reduce), a friend mentioned that my model was pretty similar to the OpenMP
model.
I read a little about OpenMP and it really hit home how powerful a language D
is,
given that I was able to implement something OpenMP-ish as a pure library,
without
any modifications to the compiler. The fact that message passing is built into
Go! makes me wonder if there's a reason why it can't be done well in a library.
Same could be said about dynamic arrays and hash
tables/maps/dictionaries. They can be implemented as libraries (C/C++
approach).
The reason these data structures are built into languages like D and
Python is probably the same reason that Go has channels and goroutines
built-in.