#!/usr/bin/perl -w # layout.pl - Don Yang (uguu.org) # # Data layout test. # # 07/04/10 use strict; my $key = 16; sub remove_whitespace($) { ${$_[0]} =~ s/\s//gs; } sub ENCODE($) { my $d = $_[0]; remove_whitespace(\$d); return $d ^ (chr($key) x length($d)); } sub DECODE($) { return $_[0] ^ (chr($key) x length($_[0])); } my $DATA = ENCODE(q{ $OUT = '$DATA = "' . $DATA . '";$FORMAT = "' . $FORMAT . '";' . DECODE($DATA) . "\n"; print $OUT; }); my $FORMAT = ""; remove_whitespace(\$DATA); remove_whitespace(\$FORMAT); my $OUT = '$DATA="' . $DATA . '";$FORMAT="' . $FORMAT . '";' . DECODE($DATA) . "\n"; print $OUT;