# Perl

There is nothing hidden in the source code. Nope. If the code doesn't work, type `use re "eval";` before it (required in Perl 5.18).

 ''=~('('.'?'.('{').(
 '`'|'%').('['^'-').(
 "\`"| '!').('`'|',')
 .'"'. '\\' .'@'.('`'
 |'.') .'=' .'('.('^'
 ^('`' |"\*")).
 ','.("\:"& '=').','.
 ('^'^('`'| ('/'))).(
 '^'^("\`"| '+')).','
 .('^'^('`'|('/'))).(
 '^'^('`'|'(')).','.(
 '^'^('`'|',')).('^'^
 ("\`"| '-')).','
 .('^' ^('`' |'*')).(
 '^'^( "\`"| (','))).
 (')'). ';'.('['^
 ','). ('`'| ('(')).(
 "\`"| ')'). ('`'|','
 ).('`' |'%').'('
 .'\\'.'$'.'|'."\=".(
 '^'^('`'|'/'))."\)".
 '\\'.'{'.'\\'."\$".(
 "\["^ '/') .((
 '=') ).+( '^'^('`'|
 '.' ) ).(( (';'))).(
 "\`"| '&'). ('`'
 |'/') .('['^')') .((
 '(')) .''. '\\'. '@'
 .+( '`' |'.'
 ).')'.'\\'.'{'.('['^
 '(').('`'|',').('`'|
 '%').('`'|'%').('['^
 '+'). '\\'. '$'.
 '_'. '-'. '\\'. '$'
 .+( ( '[') ^'/').';'
 .'\\' .'$' .''.
 ('['^ '/') .'='. (((
 '\\') )).+ "\$". '_'
 .(( ';' )).+
 '\\'.'$'.'_'.'='.'='
 .('^'^('`'|'*')).'|'
 .'|'.('['^'+').('['^
 ')' ).( '`'|
 (( ')')) ) .('`' |((
 '.'))).( '['^'/' ).+
 ((( ((( '\\'
 )) )))).'"'.('{' ^((
 (( '[')))) ).''. (((
 (( (( '\\'
 ))))))).'"'.';'.('['
 ^'+').('['^')').('`'
 |')').('`'|'.').('['
 ^+ '/').''. '\\'
 .+ '}'. +( "\["^ '+'
 ). ('[' ^"\)").( '`'
 |+ (( ')')
 )).('`' |+ '.').('['
 ^'/').( (( '{'))^'['
 ).'\\'. (( '"'
 )).('!'^'+').('\\').
 '"'.'\\'.'}'.(('!')^
 '+').'"'.'}'.')');$:
 ='.'#madebyxfix#'.'=
 ^'~';$~='@'|"\(";#;#

Explanation in spoiler.

>! This is the simple Perl program which makes use of multiple bitwise operations, and evaluates the regular expression using **=~** operator. The regex begins with **(?{** and ends with **})**. In Perl, this runs code while evaluating regular expression - this lets me use **eval** without actually using it. Normally, however, **re "eval"** is required, for security reasons, when evaluating regular expressions from strings (some older programs actually took regular expressions from the user) - but it turns out that before Perl 5.18 there was a bug causing constant folded expressions to work even without this pragma - if you are using Perl 5.18, type **use re "eval";** before the code to make it work. Other than that, there is not much else to this code.