On Fri, Dec 19, 2003 at 10:23:45AM -0800, Austin Hastings wrote:
: Of course, when I do:
:
: my $x = 0 but (true|false);
:
: then what happens?
That's the problem with making them methods. Any such operational
definition is going to get you in trouble. I think I like them better
as enums, because then you can have junctions of them functioning as
a kind of subtype. Of course, such a junction may well give Parrot
hissyfits at a lower level if there's a hardwired boolean bit that
Parrot is trying to set and/or unset simultaneously, but that's
perhaps a special case. I don't think we'll necessarily see such
a bit for boolean, since most built-in types define their truth in
terms of their actual value. It's quite a bit more likely that
Parrot will get heartburn from:
my $x = <$*IN> but (tainted|untainted);
That's because there's likely to be a "tainted" bit in the PMC somewhere,
since taintedness isn't a function of the data itself, but of its source.
Larry