On Sunday, 13 August 2017 at 06:09:39 UTC, amfvcg wrote:
Hi all,
I'm solving below task:
given container T and value R return sum of R-ranges over T. An
example:
input : T=[1,1,1] R=2
output : [2, 1]
input : T=[1,2,3] R=1
output : [1,2,3]
(see dlang unittests for more examples)
Below c++ code compiled with g++-5.4.0 -O2 -std=c++14 runs on
my machine in 656 836 us.
Below D code compiled with dmd v2.067.1 -O runs on my machine
in ~ 14.5 sec.
Each language has it's own "way of programming", and as I'm a
beginner in D - probably I'm running through bushes instead of
highway. Therefore I'd like to ask you, experienced dlang devs,
to shed some light on "how to do it dlang-way".
...
From time to time the forum gets questions like these. It would
be nice it we had blog articles concerning high performance
programming in D, a kind of best practice approach, everything
from programming idioms, to compilers, and compiler flags.