[Brasil-PM] Perl 5.20.0 Lançado! \o/

Renato Santos renato.cron em gmail.com
Quarta Maio 28 17:24:54 PDT 2014


perl-5.20.0 is successfully installed.


hora de fazer o


   perl -MCPAN -e autobundle

e verificar os ganhos de performance em apps reais!


2014-05-28 15:19 GMT-03:00 Daniel de Oliveira Mantovani <
daniel.oliveira.mantovani em gmail.com>:

> garu++
>
> Eu ainda não me conformo com a ida da Diana, parece que foi ontem que
> nós enchemos a cara no Rio!
>
> 2014-05-28 14:27 GMT-03:00 Thiago Rondon <thiago em aware.com.br>:
> > Garu++
> >
> > Você deveria jogar este teu e-mail como artigo em portais de
> > desenvolvedores e tecnologia.
> >
> > Isto é excelente para mostrar como a linguagem vem se desenvolvendo!
> >
> > Alias, seus e-mails, são artigos. ;-)
> >
> > Abs,
> > -Thiago Rondon
> >
> >
> > 2014-05-28 2:00 GMT-03:00 breno <breno em rio.pm.org>:
> >> Oi pessoal,
> >>
> >> é realmente uma ótima época para o Perl 5. A comunidade internacional
> >> continua cada vez mais ativa e a versão 20 que acabou de ser lançada é
> >> talvez uma das mais interessantes dos últimos tempos! Vejam algumas
> >> das novidades dessa versão:
> >>
> >>
> >> Assinaturas de subrotinas
> >> -----------------------------------
> >>
> >> Até então, para pegar os argumentos passados a uma função ou método em
> >> Perl, precisávamos manipular diretamente o @_, em código como:
> >>
> >> sub pessoa {
> >>      my ($nome, $idade) = @_;
> >>      print "oi $nome, vc tem $idade anos";
> >> }
> >>
> >> Agora podemos escrever:
> >>
> >> use feature 'signatures';
> >>
> >> sub pessoa ($nome, $idade) {
> >>     print "oi $nome, vc tem $idade anos";
> >> }
> >>
> >> podemos também garantir que nossa sub não terá argumentos:
> >>
> >> sub pessoa () {
> >>     ...
> >> }
> >>
> >> mais informações sobre essa tão esperada feature em:
> >>
> https://metacpan.org/pod/release/RJBS/perl-5.20.0/pod/perlsub.pod#Signatures
> >>
> >>
> >>
> >> Desreferenciamento pós-fixado
> >> ------------------------------------------
> >>
> >> Até então, para desreferenciar uma variável em Perl precisávamos
> >> envolvê-la em chaves, por exemplo:
> >>
> >> @lista = @{ $ref->{nomes}[3][-1]{lista} };
> >>
> >> A versão 20 do Perl 5 agora oferece outra sintaxe, mais clara (porque
> >> não envolve as chaves extras) e intuitiva (pq segue a lógica de ação
> >> do resto do código, da esquerda para a direita). Nessa sintaxe, o
> >> mesmo código acima pode ser reescrito como:
> >>
> >> use experimental 'postderef';
> >>
> >> @lista = $ref->{nomes}[3][-1]{lista}->@*;
> >>
> >> Ou seja, basta acessar a referência desejada e adicionar uma última
> >> seta, indicando no símbolo o tipo que você vai desreferenciar, seguido
> >> de um asterisco. Podemos desreferenciar dessa forma arrays, hashes,
> >> escalares, subs e até mesmo globs!
> >>
> >> Mais detalhes em
> >>
> https://metacpan.org/pod/release/RJBS/perl-5.20.0/pod/perldelta.pod#Experimental-Postfix-Dereferencing
> >>
> >>
> >>
> >> Hash Slices
> >> ----------------
> >>
> >> Ao manipularmos arrays, é muito comum pegar grupos de valores através
> de slices:
> >>
> >> @herculoides = qw( igoo tundro gloop zok gleep );
> >> @irmaos = @herculoides[2,4];
> >>
> >> Também conseguiamos fazer slices de hashes, mas só retornando valores
> em listas:
> >>
> >> my %dados = (
> >>     nome => 'Thaddeus "Tad" Ghostal',
> >>     apelido => 'Space Ghost',
> >>     profissao => 'Apresentador',
> >> );
> >>
> >> my ($nome, $apelido) = @dados{ 'nome', 'apelido' };
> >>
> >> Agora, no 5.20, podemos fazer hash slices completos, convertendo
> >> hashes grandes em sub-hashes! O hash slice funciona como o array
> >> slice:
> >>
> >> my %resumido = %dados{ 'nome', 'apelido' };
> >>
> >> say $resumido->{apelido};  # 'Space Ghost'
> >>
> >>
> >>
> >> Outras melhorias
> >> -----------------------
> >>
> >> * Melhor desempenho - o 5.20 está ainda mais rápido que os anteriores,
> >> com melhorias de desempenho em expressões regulares, cópia de strings,
> >> acesso a chaves de hash e muito mais!
> >>
> >> * Protótipos até então eram definidos como, por exemplo: sub lala
> >> ($$). Agora podem ser escritos como atributos da sub, ou seja: sub
> >> lala :prototype($$). A forma antiga ainda é permitida.
> >>
> >> * Melhor qualidade na geração de números aleatórios, através de um
> >> gerador independente de plataforma.
> >>
> >> * Suporte a Unicode 6.3 (versão anterior suportava o 6.2).
> >>
> >> * Android adicionado como plataforma suportada - sim, o 5.20 compila
> >> para Android! Instruções em:
> >> https://github.com/Perl/perl5/blob/blead/README.android
> >> A compilação em ambientes Windows também ficou mais rápida e portátil.
> >>
> >> * E muito mais!
> >>
> >> * CGI e Module::Build (e seus módulos associados) são alguns dos
> >> módulos que estão deixando o core para torná-lo mais leve e moderno,
> >> mas ainda estão disponíveis no seu mirror favorito do CPAN.
> >>
> >>
> >> Obituário
> >> -------------
> >>
> >> A versão 20 do Perl 5 contém também uma homenagem a nossa querida
> >> Diana Rosa, falecida em maio com apenas 27 anos. Sempre muito feliz e
> >> participante ativa da comunidade de Perl Mongers do Rio de Janeiro,
> >> sua memória agora está gravada para sempre em uma das versões mais
> >> importantes da linguagem que ela tanto gostava. A mensagem está no
> >> perldelta e pode ser vista em:
> >>
> https://metacpan.org/pod/release/RJBS/perl-5.20.0/pod/perldelta.pod#Obituary
> >>
> >>
> >> Instalando
> >> --------------
> >>
> >> Pra quem usa perlbrew: perlbrew install perl-5.20.0
> >>
> >> Pra quem usa plenv: plenv install perl-5.20.0
> >>
> >> Difícil, não? :)
> >>
> >>
> >> Estatísticas e Agradecimentos:
> >> ------------------------------------------
> >>
> >> As seguintes pessoas foram algumas das responsáveis pelo que se tornou
> >> o perl 5.20.0 (embora essa lista esteja certamente incompleta): Aaron
> >> Crane, Abhijit Menon-Sen, Abigail, Abir Viqar, Alan Haggai Alavi, Alan
> >> Hourihane, Alexander Voronov, Alexandr Ciornii, Andy Dougherty, Anno
> >> Siegel, Aristotle Pagaltzis, Arthur Axel 'fREW' Schmidt, Brad Gilbert,
> >> Brendan Byrd, Brian Childs, Brian Fraser, Brian Gottreu, Chris
> >> 'BinGOs' Williams, Christian Millour, Colin Kuskie, Craig A. Berry,
> >> Dabrien 'Dabe' Murphy, Dagfinn Ilmari Mannsåker, Daniel Dragan, Darin
> >> McBride, David Golden, David Leadbeater, David Mitchell, David Nicol,
> >> David Steinbrunner, Dennis Kaarsemaker, Dominic Hargreaves, Ed Avis,
> >> Eric Brine, Evan Zacks, Father Chrysostomos, Florian Ragwitz, François
> >> Perrad, Gavin Shelley, Gideon Israel Dsouza, Gisle Aas, Graham Knop,
> >> H.Merijn Brand, Hauke D, Heiko Eissfeldt, Hiroo Hayashi, Hojung Youn,
> >> James E Keenan, Jarkko Hietaniemi, Jerry D. Hedden, Jess Robinson,
> >> Jesse Luehrs, Johan Vromans, John Gardiner Myers, John Goodyear, John
> >> P. Linderman, John Peacock, kafka, Kang-min Liu, Karen Etheridge, Karl
> >> Williamson, Keedi Kim, Kent Fredric, kevin dawson, Kevin Falcone,
> >> Kevin Ryde, Leon Timmermans, Lukas Mai, Marc Simpson, Marcel Grünauer,
> >> Marco Peereboom, Marcus Holland-Moritz, Mark Jason Dominus, Martin
> >> McGrath, Matthew Horsfall, Max Maischein, Mike Doherty, Moritz Lenz,
> >> Nathan Glenn, Nathan Trapuzzano, Neil Bowers, Neil Williams, Nicholas
> >> Clark, Niels Thykier, Niko Tyni, Olivier Mengué, Owain G. Ainsworth,
> >> Paul Green, Paul Johnson, Peter John Acklam, Peter Martini, Peter
> >> Rabbitson, Petr Písař, Philip Boulain, Philip Guenther, Piotr
> >> Roszatycki, Rafael Garcia-Suarez, Reini Urban, Reuben Thomas, Ricardo
> >> Signes, Ruslan Zakirov, Sergey Alekseev, Shirakata Kentaro, Shlomi
> >> Fish, Slaven Rezic, Smylers, Steffen Müller, Steve Hay, Sullivan Beck,
> >> Thomas Sibley, Tobias Leich, Toby Inkster, Tokuhiro Matsuno, Tom
> >> Christiansen, Tom Hukins, Tony Cook, Victor Efimov, Viktor Turskyi,
> >> Vladimir Timofeev, YAMASHINA Hio, Yves Orton, Zefram, Zsbán Ambrus,
> >> Ævar Arnfjörð Bjarmason.
> >>
> >> Perl 5.20.0 representa aproximadamente 12 meses de desenvolvimento
> >> desde o 5.18.0 e contém aproximadamente 470.000 linhas modificadas por
> >> 2.900 arquivos, feitas por 124 autores diferentes. A linguagem Perl
> >> continua florescendo em sua terceira década graças a sua vibrante
> >> comunidade de desenvolvedores e usuários - e isso inclui você!
> >> Obrigado por usar Perl :)
> >>
> >> Divirtam-se!
> >>
> >>
> >> []s
> >>
> >> -b
> >> _______________________________________________
> >> Brasil-PM mailing list
> >> Brasil-PM em pm.org
> >> http://mail.pm.org/mailman/listinfo/brasil-pm
> > _______________________________________________
> > Brasil-PM mailing list
> > Brasil-PM em pm.org
> > http://mail.pm.org/mailman/listinfo/brasil-pm
>
>
>
> --
>
> -dom
>
> --
>
> Daniel de Oliveira Mantovani
> Business Analytic Specialist
> Perl Evangelist /Astrophysics hobbyist.
> +55 11 9 8538-9897
> XOXO
> _______________________________________________
> Brasil-PM mailing list
> Brasil-PM em pm.org
> http://mail.pm.org/mailman/listinfo/brasil-pm
>



-- 
Saravá,
Renato CRON
http://www.renatocron.com/blog/
@renato_cron <http://twitter.com/#!/renato_cron>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/brasil-pm/attachments/20140528/026426a7/attachment.html>


Mais detalhes sobre a lista de discussão Brasil-PM