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

Reply via email to