Nurmal so nebenbei: HTML (mit oder ohne JS) mit Perl zu erzeugen (print), daß macht heutzutage keiner mehr. Das war auch einer der Gründe, das Modul CGI.pm aus dem Core zu entfernen, weil diesbezügliche Funktionen längstens überholt sind.
Geschätzt seit v5.8 ist HTML::Template in jeder Perl Distribution dabei und weitere TE's standen bereits auch vorher schon zur Verfügung wie z.B. Text::Template. Außerdem ist es schon länger möglich, ganze Frameworks am Stück über CPAN zu installieren. Ebenso stehen verschiedene Module zur Verfügung betreff kontextgerechter Behandlung (HTML::Entities URI::Escape usw.).
MfG