CGI.pm more specifically. That module gives you certain methods to print out certain HTML things. BTW, CGI.pm is included in the standard Perl installation, so you don't need to download it .
Here's a brief example from "The Official Guide to Programming with CGI.pm" by Lincoln Stein, the creator of the CGI.pm module:
straight HTML:
-----------
print <<END_HTML;
<HTML><HEAD>
<TITLE>Hi Mom</TITLE>
</HEAD>
<BODY>
<H1>CGI Scripting is Easy with CGI.pm</H1>
<P ALIGN="CENTER">So elegant, don't you think?</P>
</BODY>
</HTML>
END_HTML
using CGI.pm instead:
----------------
print start_html('Hi Mom'),
h1('CGI Scripting is Easy with CGI.pm'),
P( {-align=>CENTER}, 'So elegant, don't you think?'),
end_html;
I'll be honest - I prefer to print out the straight HTML myself because I like to know exactly what gets printed. I guess I just never got comfortable enough using CGI.pm. I do use CGI.pm for certain things, like form field handling with the "param" function, and file upload handling, but I stay away from it for general HTML printing - just my preference.
HTH.
Hardy Merrill
Mission Critical Linux, Inc.