In addition to the many modules Sergei pointed to, there is also Perl's core module --
CGI.
Here's a small snippet from one of my scripts:
Code:
print header,
start_html('Host performance data'),
h1('Graph generator :: rolling multi-day metrics'),
start_form,
"Select a host to report on",p,
radio_group(-name => 'host',
-values => [@values],
-linebreak => 'true'),p,
submit(-label => 'Get my graphs'),
end_form ;
So, if you're barfing out HTML in print statements, you should probably explore one of these leads.
----------
Also, I haven't had time to explore this yet, but it's on my list:
http://www.catalystframework.org/
Seems relevant for this thread.