A linguagem Perl teve seu último release disponibilizado para a geração 5.X, continuando a adicionar novas funcionalidades e suporte a novas plataformas. As melhorias constantes demonstram como Perl continua a ser útil em um grande número de ambientes de produção.
A versão 5.20.0 inclui o suporte à Android, boxes Synology NAS e ao Atari ST. Usuários de Android podem compilar Perl para Android nativamente ou através de cross-compilation, atualmente suportada em 3 arquiteturas de CPU: ARM, MIPS e x86. O Perl 5.20.0 executa em sistemas Atari ST utilizando o sistema operacional FreeMiNT, demonstrando a habilidade da linguagem de se espalhar continuamente para novos ambientes.
Este release inclui várias correções de bugs, melhorias de performance e deprecations (depreciados).
Entre as novidades destacamos:
- Perl é compilada com suporte a Unicode 6.3 por padrão (pode ser recompilada para uma versão prévia de Unicode, se necessário)
- Geração de números randômicos consistente
- Ainda que não criptograficamente seguro, o novo gerador de números randômicos é consistente entre plataformas (Windows, Linux, etc)
- Melhorias no suporte a UTF-8
- Nova sintaxe de slice para arrays e hashes
- Melhor suporte a 64 bits, permitindo que arrays utilizem mais quantidade de memória quando estiver disponível
- Melhorias de segurança - Uma correção foi realizada para evitar a possibilidade de leitura de memória liberada durante o parsing
- Deprecations
- O uso de threads baseadas no interpretador é agora desencorajado, já que os ganhos de performance buscados não foram atingidos
- Performance
- Utilização de copy-on-write para cópia de grandes strings de forma mais rápida
- A primeira iteração sobre um grande hash é mais rápida porque o estado de seu iterador interno é agora pré-alocado
Os detalhes completos deste longo release estão disponíveis no do release notes do Perl delta.
Se você quer experimentar este release do Perl sem afetar a instalação Perl do sistema, considere utilizar o utilitário Perlbrew. Ele não requer acesso administrador (root) e lhe permite executar o Perl localmente, sem afetar scripts de sistema ou introduzir incompatibilidades não previstas.