3 ms·
I hate bad analogies that have us arguing more about how well the analogy fits than simply debating the underlying question. When we talk about concurrency or
by DocSavage 7y ago
I hate bad analogies that have us arguing more about how well the analogy fits than simply debating the underlying question. When we talk about concurrency or the ability to make simple yet high-performing server apps, it's ridiculous to say Go is a bicycle compared to the motorcycle that is Java / C#.
User-space network driver? The benchmarks group Go closer to Rust with Java / C# way behind:
https://github.com/ixy-languages/ixy-languages https://github.com/ixy-languages/ixy-languages
This would be a very complex comparison and simple analogies do us a disservice. I think the author's blanket statement that Go is faster than Java / C# also seems too broad.
- loonyphoenix 7y agoHow do you get that C# is way behind Go on this one? If anything, those benchmarks show these groups of languages performing at roughly the same level: 1. C/Rust 2. Go/C# 3. Java/OCaml/Haskell 4. JavaScript/Swift 5. Python
- DocSavage 7y agoI agree that my wording is too strong due to my memory of the latency results. As you increase the load, Go is closer to Rust/C than C# (see last benchmarks) and at a given load, C# isn’t in picture. It’s fair to say that Go/C# is similar while Java is far behind depending on the benchmarks that are important to you.
- joelfolksy 7y ago> and at a given load, C# isn’t in picture And depending on how you draw the picture, Go might not even be in the bandwidth picture.
- saghm 7y ago> User-space network driver? The benchmarks group Go closer to Rust with Java / C# way behind That's a very generous reading of those benchmarks. What you said is true in the latency benchmarks, but in the throughput benchmarks, C# _beats_ Go at high packet rates and is much closer to Go than Go is to Rust at low to medium packet rates.