Há alguns anos atrás eu precisava de uma boa ferramenta para concentrar anti-spam, anti-vírus, e muitas outras funções, dentre as possíveis escolhas eu elegi o Amavisd-new, por ser um projeto maduro e com referencias fortes. E, em um determinado momento eu estava cercado por situações nas quais eu não encontrava saída, mesmo nas listas de discussão e documentação, então, senti-me "obrigado" a ler os fontes. Inicialmente foi uma das piores experiências da minha vida, o software é todo escrito em Perl (claro!) e na época tinha mais de 18 mil linhas de código... Porem, foi também, uma das melhores oportunidades da minha vida profissional! Vou explicar o porque.
Para quem não tem muita experiência com a linguagem, Perl é um tanto quanto complicado, pois tem uma estrutura bastante diferenciadas e utiliza elementos que não são auto-explicativos. Ou seja, sem conhecer a linguagem eu não poderia entender como aquele software trabalha.
Comecei então a procurar um bom artigo ou tutorial sobre introdução e na maioria deles eu era redirecionado às manpages. Na época me parecia estranho aprender uma linguagem de programação através de suas manpages, pois eu nunca havia pensado nisso. No entanto, segui o conselho e comecei: "$ perldoc perl". Devo admitir, tudo o que você precisa, quer ou terá necessidade estão em suas manpages, e todo o conteúdo está mais do que bem explicado, cheio de exemplos e textos adicionais. Sem dúvida, as manpages do Perl são mais do que suficientes.
Perl é uma linguagem extremamente poderosa e madura, criada por Larry Wall em 1987 com o enfoque de ter recursos para processamento de texto, foi principalmente influenciada por C, Shell Script, AWK, Sed e Lisp, hoje, Perl encontra-se na versão 5.10, e está presente em quase todas as plataformas.
Afinal, Porque Perl?
Para quem não tem muita experiência com a linguagem, Perl é um tanto quanto complicado, pois tem uma estrutura bastante diferenciadas e utiliza elementos que não são auto-explicativos. Ou seja, sem conhecer a linguagem eu não poderia entender como aquele software trabalha.
Comecei então a procurar um bom artigo ou tutorial sobre introdução e na maioria deles eu era redirecionado às manpages. Na época me parecia estranho aprender uma linguagem de programação através de suas manpages, pois eu nunca havia pensado nisso. No entanto, segui o conselho e comecei: "$ perldoc perl". Devo admitir, tudo o que você precisa, quer ou terá necessidade estão em suas manpages, e todo o conteúdo está mais do que bem explicado, cheio de exemplos e textos adicionais. Sem dúvida, as manpages do Perl são mais do que suficientes.
Perl é uma linguagem extremamente poderosa e madura, criada por Larry Wall em 1987 com o enfoque de ter recursos para processamento de texto, foi principalmente influenciada por C, Shell Script, AWK, Sed e Lisp, hoje, Perl encontra-se na versão 5.10, e está presente em quase todas as plataformas.
Afinal, Porque Perl?
- Com mais de 20 anos de idade esta linguagem está mais do que consolidada no mercado, hoje é praticamente impossível ver um sistema operacional unix-like sem o seu interpretador, e mais, sem ter dezenas de scripts para as mais variadas funções, escritos em Perl;
- É o canivete-suíço das linguagens de programação pois, comprovadamente, é flexível e adaptável;
- Sua sintaxe é inspirada em linguagem C (ANSI), então, é simples, direta e prazerosa de escrever;
- Reúne as listas de Lisp, os Arrays Associativos do AWK e as Expressões Regulares do Sed, ou seja, o melhor destes mundos com inúmeras outras inovações;
- Também suporta estrutura de dados complexas, First Class Functions (construção de novas funções em tempo de execução), Closures, Orientação a Objetos, bem como a mistura de vários paradigmas, fica a critério do programador, e muito muito mais;
- Toda a liberdade ao desenvolvedor, possibilitando escrever instruções complexas em poucas linhas de código (quanto menos linhas de código menos bugs);
- É rápido e produtivo, pois provê ao programador todas as ferramentas necessárias para colocar os seus anseios em prática;
- "There is more than one way to do it";
- CPAN, um repositório com milhares de módulos Perl, largamente utilizados, e conseqüentemente, testados pela comunidade;
- Liberdade. Não te prende à burocracia, e subentende de que o desenvolvedor tem consciência do que faz e quer liberdade para isso;
Porem é necessário deixar claro que Perl é uma linguagem voltada às soluções e meios para atingir os objetivos, e, não necessariamente voltada a quem vai desenvolver estas soluções, ou seja, ela vai exigir dos programadores conceitos e disciplina, na minha opinião, isso é muito bom nos dias de hoje.
Links:
Links:
- São Paulo Perl Mongers: http://sao-paulo.pm.org/
- Perl Mongers: http://en.wikipedia.org/wiki/Perl_Mongers
- Perl 6: http://en.wikipedia.org/wiki/Perl_6
- Programming Perl: http://en.wikipedia.org/wiki/Programming_Perl
- Perl Foundation: http://en.wikipedia.org/wiki/The_Perl_Foundation
- Perl Monks: http://en.wikipedia.org/wiki/Perl_Monks
9 comments:
Realmente muito bom, é interessante profissionais com experiência escreverem para os iniciantes como eu.
Otávio, só um detalhe. O melhor do Lisp não são listas, nem listas no Perl são o mesmo que listas no Lisp. Para detalhes, vide o artiglo clássico do Paul GRAHAM.
Ler isso me deixa ainda mais interessado em Ruby, que tem como inspiração Perl (Além de LISP, Smalltalk, etc).
Só um toque, nada a ver com Perl:
Cara, fundo cinza médio e texto preto não possibilitam exatamente uma maravilhosa experiência de leitura.
Já tentou um outro tom de cinza, tipo uns 10%?
http://www.geekworld.com.br/loja/product_info.php?cPath=21&products_id=41
Camisa Republic of Perl
:D
Artigo bem legal Otávio!
Parabéns"
Jóia! Beleza de artigo Otávio.
Confesso que no começo também levei um susto com Perl.. mas depois... é gostoso de escrever! um amigo meu diz que escrever código em perl é como escrever uma poesia.
Abraço
Bacana seu artigo. Mas as cores do seu blog não estão facilitando muito a leitura.
Fora isso parabens
Senhores,
Agradeço pelos comentários, mudei um pouco as cores do blog, vejam se melhorou a leitura. Valeu do feedback.
um abraço,
Otávio Fernandes
Post a Comment