Perl::Critic: Un crítico para tu código en Perl

Echando un vistazo por Internet, topé con esta curiosa página, que tiene como misión criticar el código que hayas escrito en Perl, a través de las buenas prácticas escritas en el libro Perl Best Practices, de Damian Conway.

En la web se puede subir cualquier fichero, código en Perl, y el sistema internamente analiza el código conforme a las reglas específicas de un buen programador de Perl. Tiene cinco niveles de gravedad: gentle (gentil), stern (severo), harsh (duro), cruel y brutal.

Es un buen punto de inicio para refactorizar nuestro código, ya que lo adaptamos al uso de buenas prácticas y hacemos que el código deje de ser, tal y como catalogan a todos los códigos hechos en Perl, de tipo write-only (solo escritura).

El código de Perl::Critic está disponible también, como software libre (GPL), en CPAN, por lo que puede ser instalado de forma local para poder hacer las pruebas de código sin necesidad de subir código a la web.

A través del propio CPAN se puede descargar e instalar:

perl -MCPAN -e "install Perl::Critic"

En el fichero README nos da un ejemplo sencillo de como hacer el validador:

use Perl::Critic;
my $file = shift;
my $critic = Perl::Critic->new();
my @violations = $critic->critique($file);
print @violations;

Poniendo esto en un script Perl, ya solo tendríamos que ejecutarlo pasando el nombre de fichero como parámetro que queramos comprobar. Sencillo, ¿no?