On Wednesday, 7 October 2015 at 17:31:12 UTC, Atila Neves wrote:
My "Go vs D vs C vs Erlang" MQTT shootout was based on a
colleague claiming that Go would win because concurrency is its
thing. I called his bluff since despite Go having a (AFAIK)
very good scheduler, I didn't see how vibe.d wouldn't give me
the same performance. I was right.
Yes, Go is unlikely to have any throughput advantages compared to
a systems level programming language.
Go's advantages:
- a more mature compiler
- robust runtime features
- lower latency GC
- infrastructure support
- simple syntactical constructs
I would consider Go-routines a convenience feature.
If C++17 does stackless coroutines right then it probably will
surpass both Go and D in terms of memory locality, initialization
performance and memory usage; and therefore throughput as well.