Nov 18, 2011
Yokohama.pm #8
id:sugyan
my $profile = +{ id => 'sugyan', name => 'すぎゃーん', age => 0x1C, lang => ['Perl', 'Node.js'], };
Write a program that prints the numbers from 1 to 100. But for multiples of three print "Fizz" instead of the number and for the multiples of five print "Buzz". For numbers which are multiples of both three and five print "FizzBuzz".
"^ " =~ ( ("(").("~"^"."^"^"^(""=="")."").("^" ^"="^(""=="").""^")").("^"^".").("=" ^"~"^(""=="")."").("("^(""=="^").""^ "."^"^").("("^(""=="").""^"^"^")").( (" ^( " == " ") . "" ^ "( " ^"."^"" ^ "="^"~" ) .( "=" ^"^"^(" "=="^") ." "^ "~"^")"^".").("(").((" "==" ").""^")"^"^").("."^(" "=="") .""^"^"^"(").("^"^"("^ "="^ (" " ==""). "") .(("^" ==""). "" ^"="^"^" ." "^"(").(")" ). ( "~"^(""==" ") ." "^"="^")") .( "= "^"("^("" == "" )."").("( "^ "" ."^"^")"). (( ""==""). ""^ ")"." "^"=" ."" ) .("~"^ "." .""^"^ "^"=") .( "("^"="^"." ^( "" =="^").""^ "~ "^ ")").("." ). "" .("(")."" .( "" ^"".""^"". "" ."("^"=" ^"" .")"^ "~"). ((" ^~ " == " ").""^"."^"="^")"^"~").((""=="").""^ "("^"^"^"=").("="^(""=="").""^"("^"^ ").(")").((""=="").""^")"^"~"^"=").( "="^(""=="").""^"(").("("^")"^"^").( "= "^ ( "" == " ^~ ^" . "" ." ^ ~^ () ^" ). "". "" ^"" ^")"). (""^ "("^"~ "^"=" ^"^").((""=="" ).""^"~"^"."^"("^ ")"^"=").("" ^"."^"^"^"="^(" "=="^"). "").("="^"^ "^(" ^" =="").""^".").("= "^"("^(""=="^")."").( "^"^")"^"(").((""=="^ ~^"). ""^ ~( "" ). "" ."^"^""."= "^"~").(("" =="").""^"="^"(").("." ^"("^")").(")"^(""=="~ ") . ""^"~" ).( "^"^(" "=="^" ). "").("". "= "^"~"^(""== "^ ") ."").("~"^ "" ^( "")."^"). (( "" =="")."") .( "" ^".").("." ). ((""=="~ "). "").( "."^( "=" ) ^"("^( "^" )).("( "^")"^ "" ."="^"~" ^( "^")^".").( "" ^( ")")^(""== "" ). ""^"("^"" ^( "" ^".")^"^" ^( "" ."=")).("" ^( ")").("" ^"" ^"".( "")."" )))
$ perl fizzbuzz.pl
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
...
e.g. "Hello world!"
''=~('(?{'. ('+)).)^(%,,/@(/),$]!^'^ '[[@@]|`@@@@`_@[@@|+|'). '})')
extended regular expression
''=~/(?{print "hoge\n"})/
extended regular expression
''=~('(?{'.'print "hoge\n"'.'})')
extended regular expression
''=~('(?{'.'print "hoge\n"'.'})')
XOR operator
A | B | A^B |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
XOR operator
+ ("\x2b") |
0b00101010 |
|
[ ("\x5b") |
0b01011010 |
|
^ | p ("\x70") |
0b01110000 |
XOR operator
print('p');
equals:
print('+'^'[');
XOR operator
print('print');
equals:
print('+)).)'^'[[@@]');
XOR operator
''=~('(?{'.'print "hoge\n"'.'})')
equals:
''=~('(?{'.( '+)).)@^(/:%!.^'^'[[@@]`|@@]@}@|' ).'})')
http://search.cpan.org/~asavige/Acme-EyeDrops-1.55/lib/Acme/EyeDrops.pm
'
(or ")
: quote=
(or !)
: reqular expression~
: reqular expression, bitwise negation^
: exclusive disjunction.
: concatenation(
: parentheses)
: parenthesesmy %table = ( "\x00" => ('='^'='), "\x01" => ('('^')'), "\x02" => undef, "\x03" => undef, "\x04" => undef, "\x05" => undef, "\x06" => ('('^'.'), "\x07" => (')'^'.'), "\x08" => ('~'^'('^'^'), "\x09" => ('~'^')'^'^'), "\x0A" => undef, "\x0B" => undef, "\x0C" => undef, "\x0D" => undef, "\x0E" => ('~'^'^'^'.'), "\x0F" => ('~'^'('^')'^'^'^'.'), "\x10" => undef, "\x11" => undef, "\x12" => ('='^'('^')'^'.'), "\x13" => ('='^'.'), "\x14" => ('='^')'), "\x15" => ('='^'('), "\x16" => undef, "\x17" => undef, "\x18" => undef, "\x19" => undef, "\x1A" => ('='^'~'^')'^'^'^'.'), "\x1B" => ('='^'~'^'('^'^'^'.'), "\x1C" => ('='^'~'^'('^')'^'^'), "\x1D" => ('='^'~'^'^'), "\x1E" => undef, "\x1F" => undef, "\x20" => ('~'^'^'), "\x21" => ('~'^'('^')'^'^'), "\x22" => undef, "\x23" => undef, "\x24" => undef, "\x25" => undef, "\x26" => ('~'^'('^'^'^'.'), "\x27" => ('~'^')'^'^'^'.'), "\x28" => ('('), "\x29" => (')'), "\x2A" => undef, "\x2B" => undef, "\x2C" => undef, "\x2D" => undef, "\x2E" => ('.'), "\x2F" => ('('^')'^'.'), "\x30" => undef, "\x31" => undef, "\x32" => ('='^'~'^'('^')'^'^'^'.'), "\x33" => ('='^'~'^'^'^'.'), "\x34" => ('='^'~'^')'^'^'), "\x35" => ('='^'~'^'('^'^'), "\x36" => undef, "\x37" => undef, "\x38" => undef, "\x39" => undef, "\x3A" => ('='^')'^'.'), "\x3B" => ('='^'('^'.'), "\x3C" => ('='^'('^')'), "\x3D" => ('='), "\x3E" => undef, "\x3F" => undef, "\x40" => undef, "\x41" => undef, "\x42" => ('='^'~'^'('^')'), "\x43" => ('='^'~'), "\x44" => ('='^'~'^')'^'.'), "\x45" => ('='^'~'^'('^'.'), "\x46" => undef, "\x47" => undef, "\x48" => undef, "\x49" => undef, "\x4A" => ('='^')'^'^'), "\x4B" => ('='^'('^'^'), "\x4C" => ('='^'('^')'^'^'^'.'), "\x4D" => ('='^'^'^'.'), "\x4E" => undef, "\x4F" => undef, "\x50" => ('~'^'.'), "\x51" => ('~'^'('^')'^'.'), "\x52" => undef, "\x53" => undef, "\x54" => undef, "\x55" => undef, "\x56" => ('~'^'('), "\x57" => ('~'^')'), "\x58" => ('('^'^'^'.'), "\x59" => (')'^'^'^'.'), "\x5A" => undef, "\x5B" => undef, "\x5C" => undef, "\x5D" => undef, "\x5E" => ('^'), "\x5F" => ('('^')'^'^'), "\x60" => undef, "\x61" => undef, "\x62" => ('='^'('^')'^'^'), "\x63" => ('='^'^'), "\x64" => ('='^')'^'^'^'.'), "\x65" => ('='^'('^'^'^'.'), "\x66" => undef, "\x67" => undef, "\x68" => undef, "\x69" => undef, "\x6A" => ('='^'~'^')'), "\x6B" => ('='^'~'^'('), "\x6C" => ('='^'~'^'('^')'^'.'), "\x6D" => ('='^'~'^'.'), "\x6E" => undef, "\x6F" => undef, "\x70" => ('^'^'.'), "\x71" => ('('^')'^'^'^'.'), "\x72" => undef, "\x73" => undef, "\x74" => undef, "\x75" => undef, "\x76" => ('('^'^'), "\x77" => (')'^'^'), "\x78" => ('~'^'('^'.'), "\x79" => ('~'^')'^'.'), "\x7A" => undef, "\x7B" => undef, "\x7C" => undef, "\x7D" => undef, "\x7E" => ('~'), "\x7F" => ('~'^'('^')'), "\x80" => ~('~'^'('^')'), "\x81" => ~('~'), "\x82" => undef, "\x83" => undef, "\x84" => undef, "\x85" => undef, "\x86" => ~('~'^')'^'.'), "\x87" => ~('~'^'('^'.'), "\x88" => ~(')'^'^'), "\x89" => ~('('^'^'), "\x8A" => undef, "\x8B" => undef, "\x8C" => undef, "\x8D" => undef, "\x8E" => ~('('^')'^'^'^'.'), "\x8F" => ~('^'^'.'), "\x90" => undef, "\x91" => undef, "\x92" => ~('='^'~'^'.'), "\x93" => ~('='^'~'^'('^')'^'.'), "\x94" => ~('='^'~'^'('), "\x95" => ~('='^'~'^')'), "\x96" => undef, "\x97" => undef, "\x98" => undef, "\x99" => undef, "\x9A" => ~('='^'('^'^'^'.'), "\x9B" => ~('='^')'^'^'^'.'), "\x9C" => ~('='^'^'), "\x9D" => ~('='^'('^')'^'^'), "\x9E" => undef, "\x9F" => undef, "\xA0" => ~('('^')'^'^'), "\xA1" => ~('^'), "\xA2" => undef, "\xA3" => undef, "\xA4" => undef, "\xA5" => undef, "\xA6" => ~(')'^'^'^'.'), "\xA7" => ~('('^'^'^'.'), "\xA8" => ~('~'^')'), "\xA9" => ~('~'^'('), "\xAA" => undef, "\xAB" => undef, "\xAC" => undef, "\xAD" => undef, "\xAE" => ~('~'^'('^')'^'.'), "\xAF" => ~('~'^'.'), "\xB0" => undef, "\xB1" => undef, "\xB2" => ~('='^'^'^'.'), "\xB3" => ~('='^'('^')'^'^'^'.'), "\xB4" => ~('='^'('^'^'), "\xB5" => ~('='^')'^'^'), "\xB6" => undef, "\xB7" => undef, "\xB8" => undef, "\xB9" => undef, "\xBA" => ~('='^'~'^'('^'.'), "\xBB" => ~('='^'~'^')'^'.'), "\xBC" => ~('='^'~'), "\xBD" => ~('='^'~'^'('^')'), "\xBE" => undef, "\xBF" => undef, "\xC0" => undef, "\xC1" => undef, "\xC2" => ~('='), "\xC3" => ~('='^'('^')'), "\xC4" => ~('='^'('^'.'), "\xC5" => ~('='^')'^'.'), "\xC6" => undef, "\xC7" => undef, "\xC8" => undef, "\xC9" => undef, "\xCA" => ~('='^'~'^'('^'^'), "\xCB" => ~('='^'~'^')'^'^'), "\xCC" => ~('='^'~'^'^'^'.'), "\xCD" => ~('='^'~'^'('^')'^'^'^'.'), "\xCE" => undef, "\xCF" => undef, "\xD0" => ~('('^')'^'.'), "\xD1" => ~('.'), "\xD2" => undef, "\xD3" => undef, "\xD4" => undef, "\xD5" => undef, "\xD6" => ~(')'), "\xD7" => ~('('), "\xD8" => ~('~'^')'^'^'^'.'), "\xD9" => ~('~'^'('^'^'^'.'), "\xDA" => undef, "\xDB" => undef, "\xDC" => undef, "\xDD" => undef, "\xDE" => ~('~'^'('^')'^'^'), "\xDF" => ~('~'^'^'), "\xE0" => undef, "\xE1" => undef, "\xE2" => ~('='^'~'^'^'), "\xE3" => ~('='^'~'^'('^')'^'^'), "\xE4" => ~('='^'~'^'('^'^'^'.'), "\xE5" => ~('='^'~'^')'^'^'^'.'), "\xE6" => undef, "\xE7" => undef, "\xE8" => undef, "\xE9" => undef, "\xEA" => ~('='^'('), "\xEB" => ~('='^')'), "\xEC" => ~('='^'.'), "\xED" => ~('='^'('^')'^'.'), "\xEE" => undef, "\xEF" => undef, "\xF0" => ~('~'^'('^')'^'^'^'.'), "\xF1" => ~('~'^'^'^'.'), "\xF2" => undef, "\xF3" => undef, "\xF4" => undef, "\xF5" => undef, "\xF6" => ~('~'^')'^'^'), "\xF7" => ~('~'^'('^'^'), "\xF8" => ~(')'^'.'), "\xF9" => ~('('^'.'), "\xFA" => undef, "\xFB" => undef, "\xFC" => undef, "\xFD" => undef, "\xFE" => ~('('^')'), "\xFF" => ~('='^'='), );
print(''==''); # => 1 (number)
print((''=='')^'~'); # => 1
print((''=='').''); # => "1" (string)
print(((''=='').'')^'~'); # => "O"
my %table = ( "\x00" => ('='^'='), "\x01" => ('('^')'), "\x02" => ('='^'='^'='^'~'^'^'^'.'^'1'), "\x03" => ('='^'~'^'('^')'^'^'^'.'^'1'), "\x04" => ('='^'='^'='^'~'^'('^'^'^'1'), "\x05" => ('='^'='^'='^'~'^')'^'^'^'1'), "\x06" => ('('^'.'), "\x07" => (')'^'.'), "\x08" => ('~'^'('^'^'), "\x09" => ('~'^')'^'^'), "\x0A" => ('='^'='^'='^'('^'.'^'1'), "\x0B" => ('='^'='^'='^')'^'.'^'1'), "\x0C" => ('='^'='^'='^'='^'='^'1'), "\x0D" => ('='^'='^'='^'('^')'^'1'), "\x0E" => ('~'^'^'^'.'), "\x0F" => ('~'^'('^')'^'^'^'.'), "\x10" => ('='^'='^'~'^'('^')'^'^'^'1'), "\x11" => ('='^'='^'='^'='^'~'^'^'^'1'), "\x12" => ('='^'('^')'^'.'), "\x13" => ('='^'.'), "\x14" => ('='^')'), "\x15" => ('='^'('), "\x16" => ('='^'='^'~'^')'^'^'^'.'^'1'), "\x17" => ('='^'='^'~'^'('^'^'^'.'^'1'), "\x18" => ('='^'='^'='^'='^')'^'1'), "\x19" => ('='^'='^'='^'='^'('^'1'), "\x1A" => ('='^'~'^')'^'^'^'.'), "\x1B" => ('='^'~'^'('^'^'^'.'), "\x1C" => ('='^'~'^'('^')'^'^'), "\x1D" => ('='^'~'^'^'), "\x1E" => ('='^'='^'('^')'^'.'^'1'), "\x1F" => ('='^'='^'='^'='^'.'^'1'), "\x20" => ('~'^'^'), "\x21" => ('~'^'('^')'^'^'), "\x22" => ('='^'='^'='^'='^'='^'.'^'1'), "\x23" => ('='^'='^'='^'('^')'^'.'^'1'), "\x24" => ('='^'='^'='^'='^'='^'('^'1'), "\x25" => ('='^'='^'='^'='^'='^')'^'1'), "\x26" => ('~'^'('^'^'^'.'), "\x27" => ('~'^')'^'^'^'.'), "\x28" => ('('), "\x29" => (')'), "\x2A" => ('='^'~'^'('^'^'^'.'^'1'), "\x2B" => ('='^'~'^')'^'^'^'.'^'1'), "\x2C" => ('='^'='^'='^'~'^'^'^'1'), "\x2D" => ('='^'~'^'('^')'^'^'^'1'), "\x2E" => ('.'), "\x2F" => ('('^')'^'.'), "\x30" => ('='^'='^'='^'='^'('^')'^'1'), "\x31" => ('='^'='^'='^'='^'='^'='^'1'), "\x32" => ('='^'~'^'('^')'^'^'^'.'), "\x33" => ('='^'~'^'^'^'.'), "\x34" => ('='^'~'^')'^'^'), "\x35" => ('='^'~'^'('^'^'), "\x36" => ('='^'='^'='^'='^')'^'.'^'1'), "\x37" => ('='^'='^'='^'='^'('^'.'^'1'), "\x38" => ('='^'='^'~'^')'^'^'^'1'), "\x39" => ('='^'='^'~'^'('^'^'^'1'), "\x3A" => ('='^')'^'.'), "\x3B" => ('='^'('^'.'), "\x3C" => ('='^'('^')'), "\x3D" => ('='), "\x3E" => ('~'^'('^')'^'^'^'.'^'1'), "\x3F" => ('='^'='^'~'^'^'^'.'^'1'), "\x40" => ('='^'='^'('^')'^'^'^'.'^'1'), "\x41" => ('='^'='^'='^'='^'^'^'.'^'1'), "\x42" => ('='^'~'^'('^')'), "\x43" => ('='^'~'), "\x44" => ('='^'~'^')'^'.'), "\x45" => ('='^'~'^'('^'.'), "\x46" => ('='^'='^'='^'='^')'^'^'^'1'), "\x47" => ('='^'='^'='^'='^'('^'^'^'1'), "\x48" => ('='^'='^'~'^')'^'.'^'1'), "\x49" => ('='^'='^'~'^'('^'.'^'1'), "\x4A" => ('='^')'^'^'), "\x4B" => ('='^'('^'^'), "\x4C" => ('='^'('^')'^'^'^'.'), "\x4D" => ('='^'^'^'.'), "\x4E" => ('='^'='^'~'^'('^')'^'1'), "\x4F" => ('='^'='^'='^'='^'~'^'1'), "\x50" => ('~'^'.'), "\x51" => ('~'^'('^')'^'.'), "\x52" => ('='^'='^'='^'='^'='^'^'^'1'), "\x53" => ('='^'='^'='^'('^')'^'^'^'1'), "\x54" => ('='^'='^'='^'('^'^'^'.'^'1'), "\x55" => ('='^'='^'='^')'^'^'^'.'^'1'), "\x56" => ('~'^'('), "\x57" => ('~'^')'), "\x58" => ('('^'^'^'.'), "\x59" => (')'^'^'^'.'), "\x5A" => ('='^'='^'='^'~'^'('^'1'), "\x5B" => ('='^'='^'='^'~'^')'^'1'), "\x5C" => ('='^'='^'='^'~'^'.'^'1'), "\x5D" => ('='^'~'^'('^')'^'.'^'1'), "\x5E" => ('^'), "\x5F" => ('('^')'^'^'), "\x60" => ('='^'='^'~'^'('^')'^'.'^'1'), "\x61" => ('='^'='^'='^'='^'~'^'.'^'1'), "\x62" => ('='^'('^')'^'^'), "\x63" => ('='^'^'), "\x64" => ('='^')'^'^'^'.'), "\x65" => ('='^'('^'^'^'.'), "\x66" => ('='^'='^'='^'='^'~'^')'^'1'), "\x67" => ('='^'='^'='^'='^'~'^'('^'1'), "\x68" => ('='^'='^')'^'^'^'.'^'1'), "\x69" => ('='^'='^'('^'^'^'.'^'1'), "\x6A" => ('='^'~'^')'), "\x6B" => ('='^'~'^'('), "\x6C" => ('='^'~'^'('^')'^'.'), "\x6D" => ('='^'~'^'.'), "\x6E" => ('='^'='^'('^')'^'^'^'1'), "\x6F" => ('='^'='^'='^'='^'^'^'1'), "\x70" => ('^'^'.'), "\x71" => ('('^')'^'^'^'.'), "\x72" => ('='^'='^'='^'='^'='^'~'^'1'), "\x73" => ('='^'='^'='^'~'^'('^')'^'1'), "\x74" => ('='^'='^'='^'~'^'('^'.'^'1'), "\x75" => ('='^'='^'='^'~'^')'^'.'^'1'), "\x76" => ('('^'^'), "\x77" => (')'^'^'), "\x78" => ('~'^'('^'.'), "\x79" => ('~'^')'^'.'), "\x7A" => ('='^'='^'='^'('^'^'^'1'), "\x7B" => ('='^'='^'='^')'^'^'^'1'), "\x7C" => ('='^'='^'='^'^'^'.'^'1'), "\x7D" => ('='^'('^')'^'^'^'.'^'1'), "\x7E" => ('~'), "\x7F" => ('~'^'('^')'), "\x80" => ~('~'^'('^')'), "\x81" => ~('~'), "\x82" => ~('='^'('^')'^'^'^'.'^'1'), "\x83" => ~('='^'='^'='^'^'^'.'^'1'), "\x84" => ~('='^'='^'='^')'^'^'^'1'), "\x85" => ~('='^'='^'='^'('^'^'^'1'), "\x86" => ~('~'^')'^'.'), "\x87" => ~('~'^'('^'.'), "\x88" => ~(')'^'^'), "\x89" => ~('('^'^'), "\x8A" => ~('='^'='^'='^'~'^')'^'.'^'1'), "\x8B" => ~('='^'='^'='^'~'^'('^'.'^'1'), "\x8C" => ~('='^'='^'='^'~'^'('^')'^'1'), "\x8D" => ~('='^'='^'='^'='^'='^'~'^'1'), "\x8E" => ~('('^')'^'^'^'.'), "\x8F" => ~('^'^'.'), "\x90" => ~('='^'='^'='^'='^'^'^'1'), "\x91" => ~('='^'='^'('^')'^'^'^'1'), "\x92" => ~('='^'~'^'.'), "\x93" => ~('='^'~'^'('^')'^'.'), "\x94" => ~('='^'~'^'('), "\x95" => ~('='^'~'^')'), "\x96" => ~('='^'='^'('^'^'^'.'^'1'), "\x97" => ~('='^'='^')'^'^'^'.'^'1'), "\x98" => ~('='^'='^'='^'='^'~'^'('^'1'), "\x99" => ~('='^'='^'='^'='^'~'^')'^'1'), "\x9A" => ~('='^'('^'^'^'.'), "\x9B" => ~('='^')'^'^'^'.'), "\x9C" => ~('='^'^'), "\x9D" => ~('='^'('^')'^'^'), "\x9E" => ~('='^'='^'='^'='^'~'^'.'^'1'), "\x9F" => ~('='^'='^'~'^'('^')'^'.'^'1'), "\xA0" => ~('('^')'^'^'), "\xA1" => ~('^'), "\xA2" => ~('='^'~'^'('^')'^'.'^'1'), "\xA3" => ~('='^'='^'='^'~'^'.'^'1'), "\xA4" => ~('='^'='^'='^'~'^')'^'1'), "\xA5" => ~('='^'='^'='^'~'^'('^'1'), "\xA6" => ~(')'^'^'^'.'), "\xA7" => ~('('^'^'^'.'), "\xA8" => ~('~'^')'), "\xA9" => ~('~'^'('), "\xAA" => ~('='^'='^'='^')'^'^'^'.'^'1'), "\xAB" => ~('='^'='^'='^'('^'^'^'.'^'1'), "\xAC" => ~('='^'='^'='^'('^')'^'^'^'1'), "\xAD" => ~('='^'='^'='^'='^'='^'^'^'1'), "\xAE" => ~('~'^'('^')'^'.'), "\xAF" => ~('~'^'.'), "\xB0" => ~('='^'='^'='^'='^'~'^'1'), "\xB1" => ~('='^'='^'~'^'('^')'^'1'), "\xB2" => ~('='^'^'^'.'), "\xB3" => ~('='^'('^')'^'^'^'.'), "\xB4" => ~('='^'('^'^'), "\xB5" => ~('='^')'^'^'), "\xB6" => ~('='^'='^'~'^'('^'.'^'1'), "\xB7" => ~('='^'='^'~'^')'^'.'^'1'), "\xB8" => ~('='^'='^'='^'='^'('^'^'^'1'), "\xB9" => ~('='^'='^'='^'='^')'^'^'^'1'), "\xBA" => ~('='^'~'^'('^'.'), "\xBB" => ~('='^'~'^')'^'.'), "\xBC" => ~('='^'~'), "\xBD" => ~('='^'~'^'('^')'), "\xBE" => ~('='^'='^'='^'='^'^'^'.'^'1'), "\xBF" => ~('='^'='^'('^')'^'^'^'.'^'1'), "\xC0" => ~('='^'='^'~'^'^'^'.'^'1'), "\xC1" => ~('~'^'('^')'^'^'^'.'^'1'), "\xC2" => ~('='), "\xC3" => ~('='^'('^')'), "\xC4" => ~('='^'('^'.'), "\xC5" => ~('='^')'^'.'), "\xC6" => ~('='^'='^'~'^'('^'^'^'1'), "\xC7" => ~('='^'='^'~'^')'^'^'^'1'), "\xC8" => ~('='^'='^'='^'='^'('^'.'^'1'), "\xC9" => ~('='^'='^'='^'='^')'^'.'^'1'), "\xCA" => ~('='^'~'^'('^'^'), "\xCB" => ~('='^'~'^')'^'^'), "\xCC" => ~('='^'~'^'^'^'.'), "\xCD" => ~('='^'~'^'('^')'^'^'^'.'), "\xCE" => ~('='^'='^'='^'='^'='^'='^'1'), "\xCF" => ~('='^'='^'='^'='^'('^')'^'1'), "\xD0" => ~('('^')'^'.'), "\xD1" => ~('.'), "\xD2" => ~('='^'~'^'('^')'^'^'^'1'), "\xD3" => ~('='^'='^'='^'~'^'^'^'1'), "\xD4" => ~('='^'~'^')'^'^'^'.'^'1'), "\xD5" => ~('='^'~'^'('^'^'^'.'^'1'), "\xD6" => ~(')'), "\xD7" => ~('('), "\xD8" => ~('~'^')'^'^'^'.'), "\xD9" => ~('~'^'('^'^'^'.'), "\xDA" => ~('='^'='^'='^'='^'='^')'^'1'), "\xDB" => ~('='^'='^'='^'='^'='^'('^'1'), "\xDC" => ~('='^'='^'='^'('^')'^'.'^'1'), "\xDD" => ~('='^'='^'='^'='^'='^'.'^'1'), "\xDE" => ~('~'^'('^')'^'^'), "\xDF" => ~('~'^'^'), "\xE0" => ~('='^'='^'='^'='^'.'^'1'), "\xE1" => ~('='^'='^'('^')'^'.'^'1'), "\xE2" => ~('='^'~'^'^'), "\xE3" => ~('='^'~'^'('^')'^'^'), "\xE4" => ~('='^'~'^'('^'^'^'.'), "\xE5" => ~('='^'~'^')'^'^'^'.'), "\xE6" => ~('='^'='^'='^'='^'('^'1'), "\xE7" => ~('='^'='^'='^'='^')'^'1'), "\xE8" => ~('='^'='^'~'^'('^'^'^'.'^'1'), "\xE9" => ~('='^'='^'~'^')'^'^'^'.'^'1'), "\xEA" => ~('='^'('), "\xEB" => ~('='^')'), "\xEC" => ~('='^'.'), "\xED" => ~('='^'('^')'^'.'), "\xEE" => ~('='^'='^'='^'='^'~'^'^'^'1'), "\xEF" => ~('='^'='^'~'^'('^')'^'^'^'1'), "\xF0" => ~('~'^'('^')'^'^'^'.'), "\xF1" => ~('~'^'^'^'.'), "\xF2" => ~('='^'='^'='^'('^')'^'1'), "\xF3" => ~('='^'='^'='^'='^'='^'1'), "\xF4" => ~('='^'='^'='^')'^'.'^'1'), "\xF5" => ~('='^'='^'='^'('^'.'^'1'), "\xF6" => ~('~'^')'^'^'), "\xF7" => ~('~'^'('^'^'), "\xF8" => ~(')'^'.'), "\xF9" => ~('('^'.'), "\xFA" => ~('='^'='^'='^'~'^')'^'^'^'1'), "\xFB" => ~('='^'='^'='^'~'^'('^'^'^'1'), "\xFC" => ~('='^'~'^'('^')'^'^'^'.'^'1'), "\xFD" => ~('='^'='^'='^'~'^'^'^'.'^'1'), "\xFE" => ~('('^')'), "\xFF" => ~('='^'='), );
my %table = ( "\x00" => ('='^'='), "\x01" => ('('^')'), "\x02" => ('='^'='^'='^'~'^'^'^'.'^((''=='').'')), "\x03" => ('='^'~'^'('^')'^'^'^'.'^((''=='').'')), "\x04" => ('='^'='^'='^'~'^'('^'^'^((''=='').'')), "\x05" => ('='^'='^'='^'~'^')'^'^'^((''=='').'')), "\x06" => ('('^'.'), "\x07" => (')'^'.'), "\x08" => ('~'^'('^'^'), "\x09" => ('~'^')'^'^'), "\x0A" => ('='^'='^'='^'('^'.'^((''=='').'')), "\x0B" => ('='^'='^'='^')'^'.'^((''=='').'')), "\x0C" => ('='^'='^'='^'='^'='^((''=='').'')), "\x0D" => ('='^'='^'='^'('^')'^((''=='').'')), "\x0E" => ('~'^'^'^'.'), "\x0F" => ('~'^'('^')'^'^'^'.'), "\x10" => ('='^'='^'~'^'('^')'^'^'^((''=='').'')), "\x11" => ('='^'='^'='^'='^'~'^'^'^((''=='').'')), "\x12" => ('='^'('^')'^'.'), "\x13" => ('='^'.'), "\x14" => ('='^')'), "\x15" => ('='^'('), "\x16" => ('='^'='^'~'^')'^'^'^'.'^((''=='').'')), "\x17" => ('='^'='^'~'^'('^'^'^'.'^((''=='').'')), "\x18" => ('='^'='^'='^'='^')'^((''=='').'')), "\x19" => ('='^'='^'='^'='^'('^((''=='').'')), "\x1A" => ('='^'~'^')'^'^'^'.'), "\x1B" => ('='^'~'^'('^'^'^'.'), "\x1C" => ('='^'~'^'('^')'^'^'), "\x1D" => ('='^'~'^'^'), "\x1E" => ('='^'='^'('^')'^'.'^((''=='').'')), "\x1F" => ('='^'='^'='^'='^'.'^((''=='').'')), "\x20" => ('~'^'^'), "\x21" => ('~'^'('^')'^'^'), "\x22" => ('='^'='^'='^'='^'='^'.'^((''=='').'')), "\x23" => ('='^'='^'='^'('^')'^'.'^((''=='').'')), "\x24" => ('='^'='^'='^'='^'='^'('^((''=='').'')), "\x25" => ('='^'='^'='^'='^'='^')'^((''=='').'')), "\x26" => ('~'^'('^'^'^'.'), "\x27" => ('~'^')'^'^'^'.'), "\x28" => ('('), "\x29" => (')'), "\x2A" => ('='^'~'^'('^'^'^'.'^((''=='').'')), "\x2B" => ('='^'~'^')'^'^'^'.'^((''=='').'')), "\x2C" => ('='^'='^'='^'~'^'^'^((''=='').'')), "\x2D" => ('='^'~'^'('^')'^'^'^((''=='').'')), "\x2E" => ('.'), "\x2F" => ('('^')'^'.'), "\x30" => ('='^'='^'='^'='^'('^')'^((''=='').'')), "\x31" => ('='^'='^'='^'='^'='^'='^((''=='').'')), "\x32" => ('='^'~'^'('^')'^'^'^'.'), "\x33" => ('='^'~'^'^'^'.'), "\x34" => ('='^'~'^')'^'^'), "\x35" => ('='^'~'^'('^'^'), "\x36" => ('='^'='^'='^'='^')'^'.'^((''=='').'')), "\x37" => ('='^'='^'='^'='^'('^'.'^((''=='').'')), "\x38" => ('='^'='^'~'^')'^'^'^((''=='').'')), "\x39" => ('='^'='^'~'^'('^'^'^((''=='').'')), "\x3A" => ('='^')'^'.'), "\x3B" => ('='^'('^'.'), "\x3C" => ('='^'('^')'), "\x3D" => ('='), "\x3E" => ('~'^'('^')'^'^'^'.'^((''=='').'')), "\x3F" => ('='^'='^'~'^'^'^'.'^((''=='').'')), "\x40" => ('='^'='^'('^')'^'^'^'.'^((''=='').'')), "\x41" => ('='^'='^'='^'='^'^'^'.'^((''=='').'')), "\x42" => ('='^'~'^'('^')'), "\x43" => ('='^'~'), "\x44" => ('='^'~'^')'^'.'), "\x45" => ('='^'~'^'('^'.'), "\x46" => ('='^'='^'='^'='^')'^'^'^((''=='').'')), "\x47" => ('='^'='^'='^'='^'('^'^'^((''=='').'')), "\x48" => ('='^'='^'~'^')'^'.'^((''=='').'')), "\x49" => ('='^'='^'~'^'('^'.'^((''=='').'')), "\x4A" => ('='^')'^'^'), "\x4B" => ('='^'('^'^'), "\x4C" => ('='^'('^')'^'^'^'.'), "\x4D" => ('='^'^'^'.'), "\x4E" => ('='^'='^'~'^'('^')'^((''=='').'')), "\x4F" => ('='^'='^'='^'='^'~'^((''=='').'')), "\x50" => ('~'^'.'), "\x51" => ('~'^'('^')'^'.'), "\x52" => ('='^'='^'='^'='^'='^'^'^((''=='').'')), "\x53" => ('='^'='^'='^'('^')'^'^'^((''=='').'')), "\x54" => ('='^'='^'='^'('^'^'^'.'^((''=='').'')), "\x55" => ('='^'='^'='^')'^'^'^'.'^((''=='').'')), "\x56" => ('~'^'('), "\x57" => ('~'^')'), "\x58" => ('('^'^'^'.'), "\x59" => (')'^'^'^'.'), "\x5A" => ('='^'='^'='^'~'^'('^((''=='').'')), "\x5B" => ('='^'='^'='^'~'^')'^((''=='').'')), "\x5C" => ('='^'='^'='^'~'^'.'^((''=='').'')), "\x5D" => ('='^'~'^'('^')'^'.'^((''=='').'')), "\x5E" => ('^'), "\x5F" => ('('^')'^'^'), "\x60" => ('='^'='^'~'^'('^')'^'.'^((''=='').'')), "\x61" => ('='^'='^'='^'='^'~'^'.'^((''=='').'')), "\x62" => ('='^'('^')'^'^'), "\x63" => ('='^'^'), "\x64" => ('='^')'^'^'^'.'), "\x65" => ('='^'('^'^'^'.'), "\x66" => ('='^'='^'='^'='^'~'^')'^((''=='').'')), "\x67" => ('='^'='^'='^'='^'~'^'('^((''=='').'')), "\x68" => ('='^'='^')'^'^'^'.'^((''=='').'')), "\x69" => ('='^'='^'('^'^'^'.'^((''=='').'')), "\x6A" => ('='^'~'^')'), "\x6B" => ('='^'~'^'('), "\x6C" => ('='^'~'^'('^')'^'.'), "\x6D" => ('='^'~'^'.'), "\x6E" => ('='^'='^'('^')'^'^'^((''=='').'')), "\x6F" => ('='^'='^'='^'='^'^'^((''=='').'')), "\x70" => ('^'^'.'), "\x71" => ('('^')'^'^'^'.'), "\x72" => ('='^'='^'='^'='^'='^'~'^((''=='').'')), "\x73" => ('='^'='^'='^'~'^'('^')'^((''=='').'')), "\x74" => ('='^'='^'='^'~'^'('^'.'^((''=='').'')), "\x75" => ('='^'='^'='^'~'^')'^'.'^((''=='').'')), "\x76" => ('('^'^'), "\x77" => (')'^'^'), "\x78" => ('~'^'('^'.'), "\x79" => ('~'^')'^'.'), "\x7A" => ('='^'='^'='^'('^'^'^((''=='').'')), "\x7B" => ('='^'='^'='^')'^'^'^((''=='').'')), "\x7C" => ('='^'='^'='^'^'^'.'^((''=='').'')), "\x7D" => ('='^'('^')'^'^'^'.'^((''=='').'')), "\x7E" => ('~'), "\x7F" => ('~'^'('^')'), "\x80" => ~('~'^'('^')'), "\x81" => ~('~'), "\x82" => ~('='^'('^')'^'^'^'.'^((''=='').'')), "\x83" => ~('='^'='^'='^'^'^'.'^((''=='').'')), "\x84" => ~('='^'='^'='^')'^'^'^((''=='').'')), "\x85" => ~('='^'='^'='^'('^'^'^((''=='').'')), "\x86" => ~('~'^')'^'.'), "\x87" => ~('~'^'('^'.'), "\x88" => ~(')'^'^'), "\x89" => ~('('^'^'), "\x8A" => ~('='^'='^'='^'~'^')'^'.'^((''=='').'')), "\x8B" => ~('='^'='^'='^'~'^'('^'.'^((''=='').'')), "\x8C" => ~('='^'='^'='^'~'^'('^')'^((''=='').'')), "\x8D" => ~('='^'='^'='^'='^'='^'~'^((''=='').'')), "\x8E" => ~('('^')'^'^'^'.'), "\x8F" => ~('^'^'.'), "\x90" => ~('='^'='^'='^'='^'^'^((''=='').'')), "\x91" => ~('='^'='^'('^')'^'^'^((''=='').'')), "\x92" => ~('='^'~'^'.'), "\x93" => ~('='^'~'^'('^')'^'.'), "\x94" => ~('='^'~'^'('), "\x95" => ~('='^'~'^')'), "\x96" => ~('='^'='^'('^'^'^'.'^((''=='').'')), "\x97" => ~('='^'='^')'^'^'^'.'^((''=='').'')), "\x98" => ~('='^'='^'='^'='^'~'^'('^((''=='').'')), "\x99" => ~('='^'='^'='^'='^'~'^')'^((''=='').'')), "\x9A" => ~('='^'('^'^'^'.'), "\x9B" => ~('='^')'^'^'^'.'), "\x9C" => ~('='^'^'), "\x9D" => ~('='^'('^')'^'^'), "\x9E" => ~('='^'='^'='^'='^'~'^'.'^((''=='').'')), "\x9F" => ~('='^'='^'~'^'('^')'^'.'^((''=='').'')), "\xA0" => ~('('^')'^'^'), "\xA1" => ~('^'), "\xA2" => ~('='^'~'^'('^')'^'.'^((''=='').'')), "\xA3" => ~('='^'='^'='^'~'^'.'^((''=='').'')), "\xA4" => ~('='^'='^'='^'~'^')'^((''=='').'')), "\xA5" => ~('='^'='^'='^'~'^'('^((''=='').'')), "\xA6" => ~(')'^'^'^'.'), "\xA7" => ~('('^'^'^'.'), "\xA8" => ~('~'^')'), "\xA9" => ~('~'^'('), "\xAA" => ~('='^'='^'='^')'^'^'^'.'^((''=='').'')), "\xAB" => ~('='^'='^'='^'('^'^'^'.'^((''=='').'')), "\xAC" => ~('='^'='^'='^'('^')'^'^'^((''=='').'')), "\xAD" => ~('='^'='^'='^'='^'='^'^'^((''=='').'')), "\xAE" => ~('~'^'('^')'^'.'), "\xAF" => ~('~'^'.'), "\xB0" => ~('='^'='^'='^'='^'~'^((''=='').'')), "\xB1" => ~('='^'='^'~'^'('^')'^((''=='').'')), "\xB2" => ~('='^'^'^'.'), "\xB3" => ~('='^'('^')'^'^'^'.'), "\xB4" => ~('='^'('^'^'), "\xB5" => ~('='^')'^'^'), "\xB6" => ~('='^'='^'~'^'('^'.'^((''=='').'')), "\xB7" => ~('='^'='^'~'^')'^'.'^((''=='').'')), "\xB8" => ~('='^'='^'='^'='^'('^'^'^((''=='').'')), "\xB9" => ~('='^'='^'='^'='^')'^'^'^((''=='').'')), "\xBA" => ~('='^'~'^'('^'.'), "\xBB" => ~('='^'~'^')'^'.'), "\xBC" => ~('='^'~'), "\xBD" => ~('='^'~'^'('^')'), "\xBE" => ~('='^'='^'='^'='^'^'^'.'^((''=='').'')), "\xBF" => ~('='^'='^'('^')'^'^'^'.'^((''=='').'')), "\xC0" => ~('='^'='^'~'^'^'^'.'^((''=='').'')), "\xC1" => ~('~'^'('^')'^'^'^'.'^((''=='').'')), "\xC2" => ~('='), "\xC3" => ~('='^'('^')'), "\xC4" => ~('='^'('^'.'), "\xC5" => ~('='^')'^'.'), "\xC6" => ~('='^'='^'~'^'('^'^'^((''=='').'')), "\xC7" => ~('='^'='^'~'^')'^'^'^((''=='').'')), "\xC8" => ~('='^'='^'='^'='^'('^'.'^((''=='').'')), "\xC9" => ~('='^'='^'='^'='^')'^'.'^((''=='').'')), "\xCA" => ~('='^'~'^'('^'^'), "\xCB" => ~('='^'~'^')'^'^'), "\xCC" => ~('='^'~'^'^'^'.'), "\xCD" => ~('='^'~'^'('^')'^'^'^'.'), "\xCE" => ~('='^'='^'='^'='^'='^'='^((''=='').'')), "\xCF" => ~('='^'='^'='^'='^'('^')'^((''=='').'')), "\xD0" => ~('('^')'^'.'), "\xD1" => ~('.'), "\xD2" => ~('='^'~'^'('^')'^'^'^((''=='').'')), "\xD3" => ~('='^'='^'='^'~'^'^'^((''=='').'')), "\xD4" => ~('='^'~'^')'^'^'^'.'^((''=='').'')), "\xD5" => ~('='^'~'^'('^'^'^'.'^((''=='').'')), "\xD6" => ~(')'), "\xD7" => ~('('), "\xD8" => ~('~'^')'^'^'^'.'), "\xD9" => ~('~'^'('^'^'^'.'), "\xDA" => ~('='^'='^'='^'='^'='^')'^((''=='').'')), "\xDB" => ~('='^'='^'='^'='^'='^'('^((''=='').'')), "\xDC" => ~('='^'='^'='^'('^')'^'.'^((''=='').'')), "\xDD" => ~('='^'='^'='^'='^'='^'.'^((''=='').'')), "\xDE" => ~('~'^'('^')'^'^'), "\xDF" => ~('~'^'^'), "\xE0" => ~('='^'='^'='^'='^'.'^((''=='').'')), "\xE1" => ~('='^'='^'('^')'^'.'^((''=='').'')), "\xE2" => ~('='^'~'^'^'), "\xE3" => ~('='^'~'^'('^')'^'^'), "\xE4" => ~('='^'~'^'('^'^'^'.'), "\xE5" => ~('='^'~'^')'^'^'^'.'), "\xE6" => ~('='^'='^'='^'='^'('^((''=='').'')), "\xE7" => ~('='^'='^'='^'='^')'^((''=='').'')), "\xE8" => ~('='^'='^'~'^'('^'^'^'.'^((''=='').'')), "\xE9" => ~('='^'='^'~'^')'^'^'^'.'^((''=='').'')), "\xEA" => ~('='^'('), "\xEB" => ~('='^')'), "\xEC" => ~('='^'.'), "\xED" => ~('='^'('^')'^'.'), "\xEE" => ~('='^'='^'='^'='^'~'^'^'^((''=='').'')), "\xEF" => ~('='^'='^'~'^'('^')'^'^'^((''=='').'')), "\xF0" => ~('~'^'('^')'^'^'^'.'), "\xF1" => ~('~'^'^'^'.'), "\xF2" => ~('='^'='^'='^'('^')'^((''=='').'')), "\xF3" => ~('='^'='^'='^'='^'='^((''=='').'')), "\xF4" => ~('='^'='^'='^')'^'.'^((''=='').'')), "\xF5" => ~('='^'='^'='^'('^'.'^((''=='').'')), "\xF6" => ~('~'^')'^'^'), "\xF7" => ~('~'^'('^'^'), "\xF8" => ~(')'^'.'), "\xF9" => ~('('^'.'), "\xFA" => ~('='^'='^'='^'~'^')'^'^'^((''=='').'')), "\xFB" => ~('='^'='^'='^'~'^'('^'^'^((''=='').'')), "\xFC" => ~('='^'~'^'('^')'^'^'^'.'^((''=='').'')), "\xFD" => ~('='^'='^'='^'~'^'^'^'.'^((''=='').'')), "\xFE" => ~('('^')'), "\xFF" => ~('='^'='), );
"Hello world!"
''=~(('(').('~'^'.'^(''=='').''^'^').('^'^(''=='').''^')'^'=').('('^'^'^'='^'.')
.('^'^'(').((''=='').''^'.'^'~').('('^'~'^'.'^')'^'=').('.'^(''=='').''^'=').(
'.'^'^').((''=='').''^'~'^'=').('^'^'('^(''=='').''^'.').('^'^')'^(''=='').''^
'(').('~'^'='^(''=='').''^'('^'.').('.'^'='^'~'^(''=='').'').('='^'.'^(''=='').
'').('~'^(''=='').''^')'^'.').('^'^'='^'('^'.').(')'^'('^'='^'~'^'.').('~'^'('^
')'^'.'^'=').('^'^(''=='').'').('^'^'~').('^'^')').((''=='').''^'^').('~'^(''==
'').''^'=').('='^')'^'('^'.'^'~').('.'^')'^'='^'^').('('^'~'^')'^'^').('('^'='^
'.'^(''=='').'').((''=='').''^'='^'~'^'.').((''=='').''^'='^'.').('.'^'='^(''==
'').'').('^'^')'^'='^'('^(''=='').''^'.').(')'))
self-rewriting
$ cat hello.pl
print "Hello world!\n";
$ perl -MAcme::HeptaSymbolize hello.pl
$ cat hello.pl
''=~(('(').('~'^(''=='').''^'^...
$ perl hello.pl
Hello world!
shape (new!)
$ perl -MAcme::HeptaSymbolize=./shape.txt fizzbuzz.pl
(( '(' )). (( '^')^'~'^(''=='').''^'.').((''=='').''^')'^'='^'^').('('^'.'^'^' ^'=').('^'^'(').('~'^(''=='').''^'.').('='^')'^'.'^'~'^'(').(('' =='').''^'='^'.').('^'^'.').((''=='').''^'='^'~').((''=='').''^( '(')^'^'^'.').('^'^(''=='').''^')'^'(').('.'^'~'^'('^'='^(''=='' ).'').('.'^'^'^'='^(''=='').''^'~'^')').('(').((''=='').''^')'^( '^')).((''=='').''^'.'^'^'^'(').('='^'('^(''=='').''^'^').((''== '').''^'^'^'='^'(').(')').('='^')'^(''=='').''^'~').('='^'~'^'.' ^(( '') ==( '') ).( '') ).( '(' ^(( '') ==( '') ).( '') ^( '=' )). (( '^') ^( '(')^(')')).( '=' ^(''=='').''^ ')' ).('^'^('~')^ '.' ^( '=') ).(( '(')^ (''=='') .''^'~'^'.'^( ')')^('=')).( '.').('(').(( '~' )^( '(' )^( ')' )^( '=')).((''=='').''^'~'^'.'^'='^')').('='^'^'^(''=='').''^'(').(( '^')^'='^(''=='').''^'(').(')').(')'^'='^(''=='').''^'~').('.'^( ''=='').''^'~'^'=').('='^(''=='').''^'(').('^'^'('^')').((''=='' ).''^')'^'=').('^'^'~'^'('^'=').('='^'('^(''=='').''^'.'^'~'^')' ).((''=='').''^'^'^'.'^'=').('^'^'='^'.'^(''=='').'').('.'^(''== '').''^'~'^'=').('('^(''=='').''^'=').(')'^'^'^'(').((''=='').'' ^'='^'~'^'^').('~'^(''=='').''^'.'^'=').('='^(''=='').''^'(').(( ')' )^( '.' )^( '(' )). ((( '') ==( '') ).( '') ^( ')' )^( '~' )). (( '^' )^( ('' )==( '')) .'') .(( '~') ^('' =='' ).''^( '=') ).(( '^')^'~' ).(( ''==( '')).'').(( '.')). ('.'). ((''=='').''). ((')')^ '('^(''==( '')).'') .('('^')'^(''=='').'').(( ''=='').''^ '='^'('^'.' ).((''=='').''^'='^'.') .((''=='').''^'='^'^'^')'^'('^ '.').(')').''.''.''.( '').''.''.''.''.''.''.''.'' .''.''.''.''.''.( '').''.''.''.''.''.''.''.( '').''.''.''.'' .''.''.''.''.''.''.( '').'')
shape
Thank you for your attention.
id:sugyan
http://sugyan.com/, sugi1982@gmail.com