Perl

Origem: Desciclopédia, a enciclopédia livre de conteúdo.
Ir para navegação Ir para pesquisar


Perl (e não PERL, nem perl, muito menos pééél, mas talvez Camelo ou Que joça ilegível, quem foi que escreveu essa porcaria ?) é uma linguagem de programação orientada a ASCII Art, criada por Larry Wall em 1987 para promover o desenvolvimento daquilo que futuramente se chamaria de Programação Orientada a Gambiarras.

Sintaxe

Perl foi desenvolvido através de um experimento mal-sucedido de alquimia, que tentava criar uma quimera baseada em BASIC, COBOL, russo e japonês; portanto sua sintaxe acabou por herdar os piores recursos de todas as linguagens envolvidas.

Perl apresenta comandos if, for e while como o BASIC, mas devido à Reversal Russa ele são escritos após os comandos. Além disso, como seu bisavô COBOL é orientado ao comércio, Perl herdou o gosto por cifrões ($$$). E o código resultante é quase tão legível quanto japonês.

Por exemplo, em vez de escrever

while (contador != 0)
   contador--

if (total > 0)
   print total

se escreve

 $foo-- while $foo != 0;  # naum mecha !!!1!!!onze!
 
 print $ttl_13 if $ttl_13 > 10; # TODO: arrumar algum dia!!!


Exemplos

Hello world!

' '=~('(?{'.('[[).[|`%,,/`[/[@$'^'+)@@/^(@@@@@,@),@').'!
"})')

99 garrafas de cerveja no muro

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

Notem a formatação do programa acima; o fato dele representar garrafas de cerveja faz com que o programa rode de forma mais eficiente. Se você não consegue entendê-lo, experimente voltar depois de tomar as 99 garrafas de cerveja.

Este esboço tomou um PK de um white. Ajude-o
chamando os blacks para matá-lo!