Lorsque j'essaie d'utiliser de nouvelles fonctionnalités Perl (comme "say" au lieu de "print"), le code échoue jusqu'à ce que je mette dans la ligne "use 5.014;" et puis tout court.
Ma version installée de Perl est la 5.14.2 et elle ressemble au seul binaire que j'ai installé. Pourquoi les nouvelles fonctionnalités ne sont-elles pas utilisées par défaut?
Merci!
Les nouvelles fonctionnalités de Perl ne sont pas activées par défaut pour des raisons de compatibilité ascendante.
De perdoc.Perl.org :
Ceci est souvent utile si vous devez vérifier la version actuelle de Perl avant d'utiliser des modules de bibliothèque qui ne fonctionneront pas avec les anciennes versions de Perl. (Nous essayons de ne pas faire plus que ce que nous devons faire.)
De plus, si la version Perl spécifiée est supérieure ou égale à 5.9.5, utiliser VERSION chargera également le pragma de fonctionnalités et activera toutes les fonctionnalités disponibles dans la version demandée. Voir fonctionnalité .
De même, si la version Perl spécifiée est supérieure ou égale à 5.11.0, les restrictions sont activées lexicalement comme avec use strict (à l'exception du fichier strict.pm qui n'est pas chargé).
Une version plus récente de Perl n'a pas encore été approuvée/validée pour les versions 12.04, 12.10 et 13.10. Voir la page principale Ubuntu pour Perl here . Cependant, il semble qu'il y ait ne activité avec le travail qui avance avec Perl 5.17.
Vous pouvez installer à partir des sources, mais je ne recommanderais pas l’installation du système Perl. Au lieu de cela, je recommanderais d'installer une version en sandbox à l'aide de PerlBrew .