[Tiago Peczenyj] Perl Moderno no III FSLDC neste sábado

Passei a utilizar o twitter (@pac_man) como ferramenta de comunicação e divulgação, assim este blog tem andado um pouco abandonado, fato que deve se encerrar agora.

O fato é que neste sábado (4 de junho) acontecerá o Terceiro Fórum de Software Livre de Duque de Caxias (link para o site aqui). Será um dia cheio de palestras sobre software livre, programação, mini cursos e até uma oficina de Arduino. O evento conta com palestrantes internacionais, destaque para Rasmus Lerdorf (criador do PHP) e John “Maddog” Hal (diretor executivo da Linux Internacional). A programação completa vc encontra aqui.

O fato é que vou ministrar uma palestra as 14 hs no auditório 3 sobre Perl Moderno. Apesar de trabalhar pouco com esta linguagem no meu trabalho sinto um prazer imenso em programar em Perl, em particular as versões mais recentes e com alguns módulos maravilhosos do CPAN que espero ter tempo para falar de todos. A palestra será inspirada no livro Modern Perl do chromatic , livro este que pode ser baixado em pdf gratuitamente.

Perl hoje ainda é sinônimo de código obscuro e complexo, o que é uma grande besteira. Qualquer linguagem pode produzir programas ilegíveis e de péssima manutenção e a origem disto é o programador (mas a linguagem pode ajudar, mas ai são outros quinhentos).

Perl é uma das linguagens de propósito geral mais antigas e estáveis ainda em atividade. A quantidade de documentação disponível e os quase 100.000 módulos disponíveis no CPAN fazem de Perl uma escolha interessante tanto para desenvolver soluções com qualidade.

A cultura Perl inclui uma cultura muito forte de documentação, testes e produção de módulos e bibliotecas de propósito geral. Não raro alguém resolve um problema e contribui com a comunidade sob forma de um módulo, por exemplo.

Uma boa forma de começar a usar Perl Moderno é utilizar uma versão recente (no mínimo a 5.10) e instalar o módulo Modern::Perl. Este módulo não faz nada além de ativar features novas além de habilitar os modos strict e warnings. Veja só, antes um “hello world” tinha uma uma cara assim:

use strict;
use warnings;
 
print "Ola mundo\n";

Agora é possivel fazer assim:

use Modern::Perl;
 
say "Ola mundo";

Seria o equivalente a

use strict;
use warnings;
use 5.010_000;
 
say "Ola mundo";

Porém com escrevendo menos. É facil perceber que surgiu uma nova função built-in chamada say que, simplesmente, imprime adicionando uma “nova linha” ao final.

Mas isto é só o começo. A excelente documentação da versão Perl 5.14 se encontra on-line aqui, em particular as mudanças entre versões estão listadas na pagina de histórico.

Além das novas features, vale a pena conhecer alguns módulos core:
http://sao-paulo.pm.org/artigo/2008/ModulosCore

E alguns módulos do CPAN:
http://sao-paulo.pm.org/artigo/2009/ModulosRecomendadosCPAN

Por fim, vale a pena mencionar dois caras muito uteis.

Moose – A postmodern object system for Perl 5
http://search.cpan.org/~flora/Moose-2.0007/

Com Moose a orientação a objetos em Perl 5 ficou excelente. Vale a pena olhar o Manual e o CookBook.

E o Mojolicious – divertido e simples framework web
http://sao-paulo.pm.org/artigo/2010/Mojolicious

Site oficial:
http://www.mojolicious.org/

Espero colocar os slides rapidamente aqui no Blog além de detalhar melhor algumas coisas. No nosso idioma é possível encontrar muito material nos sites dos Perl Mongers

http://sao-paulo.pm.org/
http://rio.pm.org/

Logo devo contar como foi o Workshop ocorrido em São Paulo com a ilustre presença de Larry Wall e em breve deverá sair a data do YAPC::Brasil (Yet Another Perl Conference) que acontecerá no Rio de Janeiro.