Las nuevas "
features" (características) que traen las nuevas versiones de Perl, por defecto, no están activadas. Hay que activarlas con
use feature o con
use v5.12 o con la opción
-E desde la línea de comandos. Más información en
perldoc feature.
Cuando no pones ninguna de estas opciones, el programa se ejecuta con la versión que sea la del intérprete perl, pero eso no implica que las "
features" estén activadas. Hay que decirlo de forma explícita.
Siempre es recomendable poner el
use v5.xx cuando nuestro programa va a usar alguna característica del lenguaje que requiere un número mínimo de versión del intérprete de Perl. Un ejemplo es el operador
SmartMatch (
~~, coincidencia inteligente), que está disponible desde Perl v5.10. Si lo usamos en un programa, y alguien lo ejecuta con un Perl más antiguo, no lo entenderá y saldrá un error, en esa línea. En cambio, si ponemos el
use v5.10.1, le saldrá un aviso indicando que necesita un Perl más moderno para poder ejecutarlo.
Más información en la primera parte de
perldoc -f use.
Cuidado, porque en Perl v5.16, esto cambia un poquito:
Using perl Syntax Highlighting
use 5.016;
# a partir de aquí, solo características de 5.16
use 5.014;
# a partir de aquí, solo características de 5.14 (y no 5.16)
Coloreado en 0.001 segundos, usando
GeSHi 1.0.8.4