Gary Willoughby: "Why Go's design is a disservice to intelligent programmers"

Walter Bright via Digitalmars-d-announce digitalmars-d-announce at puremagic.com
Sat Mar 28 13:51:43 PDT 2015


On 3/28/2015 1:32 PM, Sönke Ludwig wrote:
> I/O is crucial of course, but there are also a lot of other important and
> inherently impure things such as message passing.

If the message channel is passed as a parameter to the droutine, then the 
droutine can still be pure.


> I think such a restriction
> would go way too far. Both fiber and task local storage can also be very useful
> at times, so it would be a pity to rule them out completely.
>
> You'd also usually have the whole application running on "droutines" and not
> simply use them as a local tool for occasional parallelism needs. This is
> especially true for any kind of server application. So effectively such a
> limitation may in practice end up as a limitation of the entire language.

On the other hand, if purity can make droutines much more practical, the 
tradeoff might be worth it.



More information about the Digitalmars-d-announce mailing list