Bools reloaded
Ivan Senji
ivan.senji_REMOVE_ at _THIS__gmail.com
Fri Mar 3 08:15:47 PST 2006
Don Clugston wrote:
>>
>> You should read the latest posts about this stuff (the most with
>> subject "Re:
>> DMD 0.148 release"). It's all said there. By "pure bools" I mean the
>> *purist
>> kind* of boolean type. A boolean type that abstracts us from the
>> implementation.
>
>
> Sorry, that's still not clear.
> Bruno is right, terms like "pure bools" or "purist bools" are vague, you
> can't expect everyone to know what you mean.
>
> For example: do you want "&" to be legal for bool types, or just "&&"?
Just &&.
> (they mean very different things for integers). "&" normally means
> "bitwise and", but a pure bool doesn't have any bits.
> Is it legal to cast from a bool to some other type?
I'm not against casting but implicit conversions are bad.
>
> > A boolean type that abstracts us from the implementation.
>
> No abstraction is perfect. Does a bool have a defined bit
> representation? (If you say 'no' to this, then I don't think a bool
> could be used in an extern function, you'd always have to convert it to
> int or something).
I think D ABI should define an internal representation, but it should be
abstracted from the user, so that the user doesn't have tok know
anything about it.
You make a good point about passing bool to extern functions, but one
could argue that even right now you are calling extern functions using
bools with a couple assumptions in mind. For example that the function
uses 0==false and true==everything but 0. But that doesn't have to be true.
More information about the Digitalmars-d
mailing list