estoy desconcertado con esta escritura de la prueba:¿Por qué mis pruebas Perl fallan con `use encoding 'utf8'`?
#!perl
use strict;
use warnings;
use encoding 'utf8';
use Test::More 'no_plan';
ok('áá' =~ m/á/, 'ok direct match');
my $re = qr{á};
ok('áá' =~ m/$re/, 'ok qr-based match');
like('áá', $re, 'like qr-based match');
Las tres pruebas fallan, pero esperaba que el use encoding 'utf8'
mejoraría tanto el literal áá
y las expresiones regulares qr
basados en cadenas UTF8, y así pasar el pruebas.
Si elimino la línea use encoding
las pruebas pasan como se esperaba, pero no puedo entender por qué fallarían en el modo utf8
.
Estoy usando perl 5.8.8 en Mac OS X (versión del sistema).
En el pasado siempre usaba 'use utf8' y en algún momento del año pasado más o menos, vi en algún lugar que 'use utf8' estaba roto y debería usar' use encoding 'utf8''. Parece que necesito volver a visitar todo el problema otra vez ... Gracias – melo