Let's tidy the content of $_ (by adding whitespace, lots of it):
eval("seek\040DATA,0,0;"); foreach ( 1 .. 3 ) { <DATA>; } my @camel1hump; my $camel; my $Camel; while (<DATA>) { $_ = sprintf( "%-69s", $_ ); my @dromedary1 = split (//); if ( defined( $_ = <DATA> ) ) { @camel1hump = split (//); } while (@dromedary1) { my $camel1hump = 0; my $CAMEL = 3; if ( defined( $_ = shift (@dromedary1) ) && /\S/ ) { $camel1hump += 1 << $CAMEL; } $CAMEL--; if ( defined( $_ = shift (@dromedary1) ) && /\S/ ) { $camel1hump += 1 << $CAMEL; } $CAMEL--; if ( defined( $_ = shift (@camel1hump) ) && /\S/ ) { $camel1hump += 1 << $CAMEL; } $CAMEL--; if ( defined( $_ = shift (@camel1hump) ) && /\S/ ) { $camel1hump += 1 << $CAMEL; ; } $camel .= ( split ( //, "\040..m`{/J\047\134}L^7FX" ) )[$camel1hump]; } $camel .= "\n"; } @camel1hump = split ( /\n/, $camel ); foreach (@camel1hump) { chomp; $Camel = $_; y/LJF7\173\175`\047/\061\062\063\064\065\066\067\070/; y/12345678/JL7F\175\173\047`/; $_ = reverse; print "$_\040$Camel\n"; } foreach (@camel1hump) { chomp; $Camel = $_; y/LJF7\173\175`\047/12345678/; y/12345678/JL7F\175\173\047`/; $_ = reverse; print "\040$_$Camel\n"; }
Copyright © 2000-2001, Philippe "BooK" Bruhat.
Camel code, copyright © 2000, Stephen B. Jenkins.