On 03.06.2017 22:16, Basile B. wrote:
On Saturday, 3 June 2017 at 19:12:46 UTC, Steven Schveighoffer wrote:
On Saturday, 3 June 2017 at 17:32:41 UTC, Andrei Alexandrescu wrote:
On 06/03/2017 01:03 PM, Russel Winder via Digitalmars-d wrote:
Björn Fahller has done compile time sort in C++17 here http://playfulpr
ogramming.blogspot.co.uk/2017/06/constexpr-quicksort-in-c17.html

Surely D can do better?

There is nothing to do really. Just use standard library sort.

void main() {
    import std.algorithm, std.stdio;
    enum a = [ 3, 1, 2, 4, 0 ];
    static auto b = sort(a);
    writeln(b);
}

I'd say this deserves a blog post but it would be too short.

-Steve

Yes but let's correct the mistake first ;-]
...

There is no mistake. (But 'auto' is redundant.)

void main() {
     import std.algorithm, std.stdio;
     enum a = [ 3, 1, 2, 4, 0 ];
     enum b = sort(a);// static is not CT !!!!!
     static assert(b[0] == 0); // does not pass with static auto b...
     writeln(b);
}



This is worse. Now there is an allocation at runtime.

Reply via email to