> > > This RFC proposes that multiway comparisons such as:
> > >
> > > if ( 0 <= $x < 10 ) { print "digit" }
> > >
> > > should do what the user means.
>
> I think this should mean what it means in Icon, namely, that
> $x < $y evaluates to false if $x >= $y, and evaluates to
> "$y (but true)" if $x < $y. This allows the operators to be
> nested, i.e. $x < $y < $z would be ( $x < $y ) < $z, which
> performs the $y < $z comparison iff $x < $y.
I very much like Icon's failure model, but I was loathe to try and
graft it wholesale onto Perl 6. Doing it properly would require a
substantial rethink of the exception mechanism, flow control, the
nature of scalars, undef, etc., etc.
In the end I concluded that simple DWIMity on multiway comparisons
was enough.
But don't let that stop you counter-proposing the fuller mechanism. :-)
Damian