Re:My Vision of D’s Future
by ZootAllures91 on Tuesday October 15, 2019 @07:44PM
(#21265385)
Well, for example:
You'll never be able to do anything like that in Rust until const generics are not only complete on their own, but also fully compatible with "const fn".
[ Parent
| on HN ]
Assuming I formatted it right, I made your example shorter
import std;
template Math(char Op) {
auto eval(T, U)(T l, U r) {
static foreach(x; "+-*/") {
if (Op == x)
mixin("return l ", x, " r;");
}
}
}
static immutable result = Math!('+').eval(1, 2) + Math!('*').eval(3.0, 3.0);
void main() {
writeln(result);
}
Re:My Vision of D’s Future
by ZootAllures91 on Tuesday October 15, 2019 @11:32PM
(#21266816)
Yeah, that works too. I was trying not to get too crazy I guess. And also just show all the various levels of "static".