The other day, as they idea of the defined-dereference operator (~> is the favorite at the moment), I proposed the idea of implementing a pragma that changed what Perl does when it's faced with a dereference of, or a message sent to, undef. Right now, of course, it dies.
This bit me hard this evening as we put up some new code; I have a Mason template that calls a series of methods to get a particular piece of status information to be shown to the user. I had bullet proofed it, or so I thought.
my $foothing = $current_object->foo;
if (defined $foothing) {
…
I've been working on WhiteHat's new sourcecode scanner, and one of the things we need to do is transmit snippets of source code around inside of XML. Since many XML parseres are notoriously sensitive to non-ASCII characters, even in CDATA, we decided that the simplest thing to do was Base64-encode them. This shouldn't be a problem, right?
Well, no. Turns out that MIME::Base64 is very picky itself about encoding things properl…
If you visit the Silicon Valley Perl Mongers Meetup site, you'll see that I'm now listed as the organizer. This is not strictly true - Ian Kluft is still our primary organizer, but due to the fact that Meetup sends out a metric buttload of mail - I have now witnessed this as organizer - he missed the "OMG SVPERL GONNA DIE" message that got sent, repeatedly, to all the SVPerl members when the Meetup bill was due in a week.
Everyone was getting nervous, so I jumped in and paid the bil…