--- Juerd <[EMAIL PROTECTED]> wrote:
> Austin Hastings skribis 2004-06-24 14:29 (-0700):
> > > $foo as boolean
> > "This is Perl 6. Everything is an object, or at least pretends to
> > be one. Everything has a .boolean method that returns 0 or 1."
>
> If I understand the current design correctly, having both .boolean
> and casting via "as" would mean that "$foo.boolean" and "$foo as
> Bool" and "$foo as Bit" mean the same in boolean context, but the
> first literally is 1 or 0, the second is true or false and the
> third is 1 or 0 again.
I don't think so. Specifically, I'd expect
$x = 0 but true;
print $x.boolean; # 1
print ($x as Bit); # 0
# (I don't know about 'Bool')
> Is this complexity really needed?
I'd say yeah, it is. 0-but-true is pretty nice to have. (Finally the
system calls can return something other than -1.)
> Juerd
=Austin