BigInt bool assign
Timon Gehr
timon.gehr at gmx.ch
Sat Dec 24 09:45:10 PST 2011
On 12/24/2011 05:02 PM, Derek wrote:
> On Sun, 25 Dec 2011 02:50:15 +1100, Timon Gehr <timon.gehr at gmx.ch> wrote:
>
>>> Although BOOL is typed as 'int', it really has the semantics of 'bool'.
>>> We have an example of this in D1's opEquals().
>>> I think this is reason why implicit conversion bool -> int exists.
>>
>> It exists because it is handy and makes sense. Would you also want to
>> ban implicit short -> int conversion?
>
> A 'short' is a type of integer, an 'int' is a type of integer, but a
> 'bool' is NOT a type of integer.
>
> One can do arithmetic with two integers
If so, then 'short' is not a type of integer.
> but what does 'TRUTH * TRUTH'
> mean? Or what does 'FALSEHOOD - TRUTH' mean?
>
TRUTH and FALSEHOOD are in my understanding not values, so performing
operations on them is nonsensical.
Having the symbols {0, 1} as the boolean values is a common convention,
even outside programming language implementations or computer
science/digital design. So TRUE * TRUE = 1*1 = 1 and FALSE - TRUE = 0 -
1 = -1 makes sense.
More information about the Digitalmars-d
mailing list