On 12/23/2011 11:34 PM, Jonathan M Davis wrote:
On Friday, December 23, 2011 17:19:26 bearophile wrote:
Derek Parnell:
I'm with Don on this one because a boolean and an integer are not the
same concept, and even though many programming languages implement
booleans using integers, it still doesn't make them the same thing.
D doesn't implement booleans with integers, D has a boolean type. But D
allows bools to implicitly cast to ints/longs.
I'd actually argue that that's a mistake. Implicitly converting an int to a
bool is one thing - that's useful in conditional expressions
Using an expression in a conditional amounts to an explicit cast. This
is an unrelated issue. Implicit int -> bool conversion is disallowed in
D. It loses information.
- but converting from bool to int is something else entirely. I see no reason
to expand that
problem into BigInt. _int_ shouldn't have it, let alone BigInt.
- Jonathan M Davis
There is really no problem with that. I have never seen anyone complain
about implicit bool -> int conversion. Why do you think it is bad? Does
anyone have an example to back up the claim that it is bad?