On Fri, May 13, 2005 at 11:43:42AM +0300, Markus Laire wrote:
: Perhaps spec should be changed so that :p means :p(bool::true) or :p(?1)
: and not :p(1)
I'm still not sure I believe in booleans to that extent. I suppose
we could go as far as to make it :p(0 but true). Actually, it's more
like "undef but true", if you want to be able to distinguish
sub foo (+$p = 0) { # no :p at all
say "true" if $p; # :p with no argument
$p //= 42; # :p with no argument
...
}
Or maybe it's something more like "1 but assumed". In any event, it'd
be nice to be able to distinguish :p from :p(1) somehow. Maybe the
Bool type is good enough for that. The bool type probably isn't unless
we depend on autoboxing to turn it into a Bool consistently.
Larry