On 01/23/2012 12:05 AM, Manu wrote:
On 22 January 2012 23:34, Andrei Alexandrescu <[email protected] <mailto:[email protected]>> wrote:On 1/22/12 3:18 PM, Manu wrote: On 22 January 2012 18:42, Sean Kelly <[email protected] <mailto:[email protected]> <mailto:[email protected] <mailto:[email protected]>__>> wrote: The popularity of a language has no bearing on the quality of one of its features. Are there other message passing schemes you prefer? As said in the original post, I think receiveOnly() is the most intuitive API. I just think that one should be named receive(), and perhaps receive() may be renamed receiveMulti(). Surely that would be more intuitive to more people? Names will not change. Why? Surely API's being as intuitive as possible should be a key goal for a standard library?
Another key goal is that an API should be as concise and powerful as possible. Furthermore, the API is very intuitive once you glimpsed over the documentation.
The thing isn't supposed to be stable yet is it? If you take the attitude that no name should ever be changed, then I think there is a problem with the phobos contribution process.
He said 'Names will not change' not 'All names never change'.
Phobos contributions have basically no incubation time/process. I've seen others suggest new stuff should go in exp.xxx to incubate, and it should only be promoted to std after some time, or some successful usage in multiple large-ish projects? It's a shame that basic usability things like that couldn't be caught earlier.
Erlang *has* been used in multiple large projects and it is likely that you make use of some service that is powered by erlang on a daily basis. It is successful in its niche. Copying its message passing API is reasonable and safe: Its concurrency model is the main selling point of erlang.
http://programmers.stackexchange.com/questions/112417/real-world-applications-of-erlang
Do you disagree that receive() and receiveMulti() (with the crazy var-arg-of-delegates API that nobody would have ever seen in any popular language before) is a far more intuitive approach?
Yes.
C# is awesome because it gets this right. I think that's its single greatest achievement, and can not be understated.
I couldn't find any information about a C# API for the same functionality. Can you help me out?
