On Wednesday, 8 June 2016 at 22:19:47 UTC, Bauss wrote:
D definitely needs some optimizations, I mean look at its benchmarks compared to other languages: https://github.com/kostya/benchmarks

I believe the first step towards better performance would be identifying the specific areas that are slow.

I definitely believe D could do much better than what's shown.

Let's find D's performance weaknesses and crack them down.

The previous step is to find a good benchmark. This one isn't.

For example, you should clarify what kind of code you want: Short idiomatic elegant code? Or rather optimized to max using every trick you can no matter the length?

Carefully check what the benchmark actually measures. It should not measure IO or pthread context switching for example, because that is not really a distinguishing factor between languages.

Also make sure the benchmarks are fair. For example, "threadring" in the shootout measures pthread context switching, except languages like Erlang and Haskell, which use user-level scheduling. This an apples to oranges comparison.

Sometimes the decision is not clear. Do you want a benchmark of regular expressions? It makes sense to compare D's and Rust's standard library to others, but many (Python, Ruby, etc) will use nearly the same C code underneath.

Another aspect is the statistical stuff. At least measure the deviations. Better, do some hypothesis tests.

Reply via email to