Se me ha ocurrido una cosa... hacer el mismo programa del ejemplo anterior pero en Perl, para ver las diferencias.
Using perl Syntax Highlighting
#!/usr/bin/perl
use 5.010;
my $EmailRegex = qr"(?<user>[^@]+)@(?<host>.+)";
if (@ARGV) {
$S = $ARGV[0];
}
if ($S =~ /$EmailRegex/) {
say "User: " . $+{user};
say "Host: " . $+{host};
}
else {
say "$S no es una dirección de correo válida";
}
say '';
say 'Presione <ENTRAR> para salir...';
<STDIN>;
Coloreado en 0.003 segundos, usando
GeSHi 1.0.8.4
Y ahora veamos unas comparaciones...
Tamaño de los programas
Using text Syntax Highlighting
Perl: VB:
22 líneas 24 líneas
54 palabras 65 palabras
232 caracteres 611 caracteres
Coloreado en 0.000 segundos, usando
GeSHi 1.0.8.4
Se ve muy claro que, aún teniendo casi el mismo número de líneas y palabras, las de VisualBasic son más del doble de largas... hay que escribir mucho :)
Como no tengo Windows, no sé el tamaño de la máquina virtual de .Net. El intérprete de Perl en mi sistema ocupa 1,6Mb.
El programa en VBasic necesita cargar una librería externa, mientras que en Perl, las expresiones regulares están ya incluidas.
También desconozco el tamaño del ejecutable generado en .Net, pero en Perl sí que lo sé: es igual al del programa: 232 caracteres.
En cuanto a las herramientas de desarrollo, en mi empresa se gastan 600€/año por 5 licencias de Visual Studio. Yo he usado el joe, que viene incluido en casi todas las distribuciones Linux. Coste: 0€/año.
En cuanto al sistema operativo, un Windows normalito está a partir de 35€, mientras que mi Linux me ha costado 7€ (aunque me lo podía haber bajado de Internet a un costo menor).
Sí... definitivamente sigo con Perl :)