Questão Por que o Perl não usa a versão mais recente por padrão?


Quando tento usar novos recursos perl (como "say" em vez de "print") o código falha até que eu coloque na linha "use 5.014;" e então tudo corre.

Minha versão instalada do perl é 5.14.2, e parece que o único binário que instalei, porque os novos recursos não estão sendo usados ​​por padrão?

Obrigado!


4
2018-01-17 23:11


origem




Respostas:


Novos recursos do Perl não estão habilitados, por padrão, por motivos de compatibilidade com versões anteriores.

A partir de perdoc.perl.org:

Isso geralmente é útil se você precisar verificar a versão atual do Perl antes de usar módulos de biblioteca que não funcionem com versões anteriores do Perl. (Nós tentamos não fazer isso mais do que temos que fazer.)

Além disso, se a versão Perl especificada for maior ou igual a 5.9.5, use VERSION também carregará o recurso pragma e ativará todos os recursos disponíveis na versão solicitada. Vejo característica.

Da mesma forma, se a versão Perl especificada for maior ou igual a 5.11.0, as restrições serão ativadas lexicamente, como com use strict (exceto que o arquivo strict.pm não está realmente carregado).

Uma versão mais recente do Perl ainda não foi aprovada / confirmada para 12.04, 12.10 ou mesmo 13.10. Veja a página principal do Ubuntu para Perl Aqui. No entanto, parece que existe alguma atividade com o trabalho avançando com Perl 5.17.

Você poderia instalar a partir da fonte, mas eu não recomendaria mais de montar a instalação do sistema Perl. Em vez disso, recomendo instalar uma versão em área restrita usando PerlBrew.


4
2018-01-21 01:17