On Sunday, 11 December 2016 at 02:09:41 UTC, Orut wrote:
D nub here. I have a Python script that I'd like to implement
in D. For certain parts, the D equivalent was slower than
Python's. For example,
Python code:
#dummy code
s = ["abc", "fjkd", "L", "qwa", "r", "uw", "tiro", "bc", "sg",
"k", "jds", "yd"];
for i in range(10000000): # a lot of array to string
conversions
'-'.join(s) # not assigning this to a variable to
simplify comparison
D code:
import std.stdio;
import std.array;
void main(string[] args){
string[] s = ["abc", "fjkd", "L", "qwa", "r", "uw", "tiro",
"bc", "sg", "k", "jds", "yd"];
for(int i; i<10_000_000; i++) s.join("-"); //see Python
comments
}
Python was 2x faster.
How should I implement this in D?
Preallocate a static array for your result.