Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • For instance...

    perl -wle "print '111|1' == 111"

    javascript:alert(parseInt("111|1"))

    Granted, the perl example throws a warning, but it does evaluate that statement as true.

    You may consider it a bug; others might consider it a feature. And if you were to change how "111|1" gets cast to a number, or return an error for comparing a varchar to a number, who knows what that would break/fix.

    Incidentally, SQLite and PostgreSQL don't have this problem/feature.

    • perl -wle "print '111|1' == 111"

      Yes, and I mentioned that it was using a similar algorithm to Perl. But, of course, Perl users can choose which conversion is used by using either "eq" or "==". MySQL users don't appear to have a choice.

      And if you were to change how "111|1" gets cast to a number, or return an error for comparing a varchar to a number, who knows what that would break/fix.

      Of course. That's always a danger when you release buggy code - people can come to rely on the bugs. Maybe they should

    • The difference is that, in theory, MySQL is a database. Databases should be strict and cranky, because they're the authority for your important data.

      I expect my scripting language to act cute and helpful, and my database to kick me in the ass whenever I get sloppy.