Mark J. Reed writes:
> Luke Palmer wrote:
> 
> >Marcus Adair writes:
> >> Additionally I question whether this is truly a case improving to the
> >> point of least surprise? After all, I don't know a programmer who's
> >> going to be surprised by what true means. There are still *some* things
> >> you may have to learn in software dev 101 ;)
> >
> >The problem is this (common) one:
> >
> >    if answer() == true {
> >        # do something
> >    }
> >
> >We want to give the programmer no good way to do that, because it's
> >wrong.
> >
> 
> What do you mean "wrong"?  It looks perfectly valid to me.  It's 
> redundant, since answer() by itself would suffice as a condition with no 
> comparison, but does that make it wrong?

It's wrong in the same way that:

    if (ref $obj eq 'MyClass') {...}

Is wrong.  If answer() decides that it should start returning a more
interesting value of true, then the test fails.

Luke

Reply via email to