On Wednesday, 22 April 2015 at 21:22:43 UTC, Meta wrote:
That makes sense. It seems to me that D has very... special
but effective syntax. I'm having a hard time remembering all
the keywords and expression forms (especially of IsExpression)
but it's definitely a vast improvement over C++'s half baked
pile of whatever. Thanks for the help, everyone.
The `is` expression is complicated and has a bunch of different
usage syntax, but it's like one of those little multitools.
Complicated to figure out how to use, but extremely flexible
and able to do a lot of cool things.
Yeah, the `is` expression is one of my favorite D features.
import std.container;
template Substitute (T, U) {
static if (is (T == F!V, alias F, V))
alias Substitute = F!U;
}
alias List = SList!int;
static assert (is (Substitute!(List, char) == SList!char));
It's the little things.