1 - Apareceu uma expressão regular bizarra na minha vida, comofaz ? Perl é famoso (e as vezes assustador) por seu incrível suporte *nativo* a expressões regulares.
Infelizmente alguns programadores não utilizam recursos da liguagem para tornar seu código mais legível, como o modificador //x[1], que permite você segregar sua expressão em blocos, linhas, ou qualquer coisa que _humanos_ possam ler mais facilmente =D Mas até para expressões bizarras, o CPAN tem solução, YAPE::Regex::Explain[2], Agora você não precisa mais temer =D <code> #!/usr/bin/perl use feature 'say'; use YAPE::Regex::Explain; my $regex = qr/<([^\s]+)(\s[^>]*?)?(?<!)>/; say YAPE::Regex::Explain->new($regex)->explain; </code> [1] - http://perldoc.perl.org/perlretut.html#Building-a-regexp [2] - https://metacpan.org/module/YAPE::Regex::Explain 2 - É díficil aprender Perl?[1] Não, Perl é fácil de começar a aprender e a continuar aprendendo. Perl é parecido com a maioria das linguagens de programação que vocẽ pode ter tido experiência, então se você programa em C, AWK, shell script ou mesmo BASIC, você ja está parcialmente lá. Muitas tarefas somente requerem um pouco da linguagem Perl. Um dos lemas do desenvolvimento Perl é "existe mais de um modo de faze-lo" (TMTOWDI, as vezes pronunciado "tim toady"). Perl tem uma curva de aprendizado rasa(fácil de aprender) e longa(há chão enquanto você quiser caminhar). Finalmente, porque Perl é frequentemente(mas não sempre, e certamente não por definição) uma linguagem interpretada, você pode escrever seus programas e testar sem o passo intermediário da compilação, permitindo experimentar e testar/debugar fácil e rapidamente. Esta facilidade de experimentar achata a curva de aprendizado ainda mais. Coisas que tornam Perl fácil de aprender: experiência em Unix, quase qualquer tipo de experiência de programação, entendimento de expressões regulares, habilidade de entender código alheio. Se há algo que você precisa fazer, isso provavelmente já foi feito e um exemplo funcional útil está disponível. Não se esqueça de qualquer módulo Perl. Eles são discutidos em outra parte do FAQ, juntamente com CPAN. [1] - tradução livre do http://perldoc.perl.org/perlfaq1.html#Is-Perl-difficult-to-learn%3f []s, @_marcioferreira Marcio Ferreira marciodesouzaferreira.blogspot.com "Perl lives as the 'toolbox for Unix' " 2011/10/17 Leonardo Ruoso <[email protected]> > Em Seg, 2011-10-17 às 19:08 -0200, Eden Cardim escreveu: > > >>>>> "Leonardo" == Leonardo Ruoso <[email protected]> writes: > > Invés disso, use o App::cpanminus que é trivial de instalar, e que sabe > > fazer instalações auto-contidas via local-lib: > > > > $ curl -L http://cpanmin.us | perl - -L meusmodulos --self-upgrade > > $ cpanm -L meusmodulos local::lib Modulo::Um Modulo::Dois > > > > e no seu programa: > > > > use local::lib 'meusmodulos'; > > > > São tremendas as possibilidades. Por exemplo, você pode distribuir um > > diretório com a sua aplicação e um subdiretório contendo a instalação de > > todas as dependências. O Miyagawa tá trabalhando num sistema chamado > > carton pra facilitar ainda mais esse processo. > > > > Leonardo> ficar criando múltiplos chroot para poder instalar módulos > > Leonardo> Perl atualizados. > > > > Preciso atravessar a rua, me dá carona na nave espacial? :D > Claro, dois palitos pra clonar minha VM Catalyst pré-configurada :-D > > -- > Leonardo Ruoso - Journalist/Perl Developer > Media - UFC/2006 - Telecommunications - IFCE/1998 > [email protected] - (11) 3522-9612 > Visit > - http://www.linkedin.com/in/lruoso (professional profile) > - http://www.oktiva.com.br (company website) > > =begin disclaimer > Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ > SaoPaulo-pm mailing list: [email protected] > L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> > =end disclaimer >
=begin disclaimer Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ SaoPaulo-pm mailing list: [email protected] L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> =end disclaimer
