http://www.perlmonks.org?node_id=919004


in reply to TIMTOWTDI meets Rube Goldberg

You don't have to ask me twice to crack a favorite beverage... done.

I've inherited a lot of crappy code, some of it in Perl (but to be fair, lots more in Java). A few years ago I had to change a script with this code to to add leading zeroes to day and month values less than 10:

sub add_zero { $x = shift; return $x if ( $x > 9 ); return ( '0' . $x +) if ( $x < 10 ); }
I'm not proud of this but I'll admit I "fixed" it with this:
sub pad { my $n = shift; return $n if $n =~ /\D/; return $n > 9 ? $n : "0$n"; }
I've never gotten around to fixing that because it always works... so far. But maybe this would be better? (suggestions welcome)
$n = $n =~ /^\d/ ? sprintf('%02d', $n) : $n;
There is lots more, mostly not mine, some definitely more WTF, but it will take some time to dig through the CVS history and pull out the most entertaining.