Sí que se puede, claro.
Aunque se podría hacer escribiendo el código por separado y luego incorporarlo en el main con un do{}, lo más normal es usar la paquetería.
Tienes algunas ideas aquí:
viewtopic.php?t=1107&highlight=packageviewtopic.php?t=1092&highlight=packageEn resumen... en los ficheros donde están las subrutinas, se ponen de la forma:
Using perl Syntax Highlighting
package MisSubrutinas
;
# ... código ...
1;Coloreado en 0.003 segundos, usando
GeSHi 1.0.8.4
Y luego en el main, se incorporan las subrutinas con un:
Using perl Syntax Highlighting
use MisSubrutinas
;Coloreado en 0.001 segundos, usando
GeSHi 1.0.8.4
Quedan algunos detalles por comentar, pero esto es lo básico.