On Tuesday, 19 September 2017 at 17:40:20 UTC, EntangledQuanta
wrote:
Yeah, that is really logical! No wonder D sucks and has so many
bugs! Always wants me to be explicit about the stuff it won't
figure out but it implicitly does stuff that makes no sense.
The whole point of the parenthesis is to inform the compiler
about the expression to use. Not use everything to the left of
?.
There are two issues there; operator precedence and booleans
(_win[0] == '@') being a valid operands to +.
If someone is too stupid to learn how precedence works, they
should consider a different career instead of blaming others.
OTOH, booleans converting to numbers is a very questionable
feature. I certainly have never seen any good use for it. This is
just an unfortunate legacy of C, which didn't even have booleans
for a long time.