Jivaro code

This is the code that does the head (and body) shrinking.

eval("seek\040DATA,0,0;");            # start of file
foreach ( 1 .. 3 ) { <DATA>; }        # skip 3 lines
my @camel1hump; my $camel; my $Camel; # define stuff
while (<DATA>) {
    $_ = sprintf( "%-69s", $_ );      # format line
    my @dromedary1 = split (//);      # odd line
    if ( defined( $_ = <DATA> ) ) { @camel1hump = split (//); } # even line
    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";
}

Previous | Next


Copyright © 2000-2001, Philippe "BooK" Bruhat.
Camel code, copyright © 2000, Stephen B. Jenkins.