Hacker News new | ask | show | jobs
by WalterBright 1117 days ago
D doesn't have a special syntax for user-defined literals, which avoids this problem completely. One can use templates for user-defined literals, such as:

    km!1000
for 1000 kilometers. Here, km is a template that takes an integer argument:

    struct Kilometer { int v; }

    template km(int V) { Kilometer km = Kilometer(V); }