[Madrid-pm] Optimizando el valor de vuelta de una subrutina

JJ Merelo jjmerelo en gmail.com
Dom Mayo 27 06:13:19 PDT 2012


Hola
Pregunta corta: ¿Cómo se hace para que Perl no devuelva un valor de una
subrutina?
Pregunta larga: en el MasterMind hay subrutinas que se llaman millones (o
miles de millones) de veces. El profiler dice que, curiosamente, el
devolver el valor de la misma es el cuello de botella. Igual hay otra forma
de solucionarlo, como meterlas inline (la verdad, no sé como hacerlo) pero
lo que he hecho ha sido declarar el prototipo como que devuelvan void y
hacer que se les pase el hashref de vuelta como parámetro. Marginalmente
mejora algo, pero sigue devolviendo el valor devuelto por la última función
en la subrutina (un map). Añadir return; no mejora prácticamente nada, y
declararla como void con prototipo tampoco. ¿Alguna idea?

Saludos

-- 
JJ
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.pm.org/pipermail/madrid-pm/attachments/20120527/e6b98bd0/attachment.html>


Más información sobre la lista de distribución Madrid-pm