Conversión de código, par a par
Perl a PL/SQL
La misma rutina, escrita a mano en Perl y en PL/SQL. Está aquí para que vea qué cambia y qué no antes de que nadie le pase un presupuesto.
Antes · Perl
sub interest {
my ($balance, $rate) = @_;
return sprintf('%.2f', $balance * $rate);
}En qué se convierte · PL/SQL
CREATE OR REPLACE FUNCTION interest(
p_balance NUMBER, p_rate NUMBER
) RETURN NUMBER IS
BEGIN
RETURN ROUND(p_balance * p_rate, 2);
END;Abajo tiene una rutina en los dos lenguajes. Sobre un sistema real el mismo movimiento corre por el árbol entero de una vez: la plataforma lee en paralelo todos los lenguajes que haya dentro, construye el grafo de dependencias y un ingeniero traza las fronteras. Un millón de líneas es el tamaño normal de ese trabajo, y termina dentro de treinta días.
Cómo se ve esto en su sistema entero
Sobre su código real ese mismo movimiento responde a lo que un par de ficheros no alcanza: qué ficheros ya no llama nadie, qué proceso batch escribe el registro que otro lee a las 02:00 y si la versión reescrita sigue dando las cifras que sus auditores vieron el mes pasado. La auditoría vuelve con las tres respuestas en tres a cinco días.