Interp is the Mason workhorse, executing components and routing their output and errors to all the right places. In a mod_perl environment, Interp objects are handed off immediately to an ApacheHandler object which internally calls the Interp implementation methods. In that case the only user method is the new() constructor. Components can also be called outside of mod_perl.
Mason creates one Request object for every web request (or, in stand-alone mode, every Interp::exec call). Inside a component you access the current request object via the global $REQ.
This module handles the paging of data coming from an arbitrary source and being displayed using HTML::Template and CGI.pm. It provides an interface to pages of data similar to many well-known sites, like altavista.digital.com or www.google.com.
This is the new XS based HTML::Parser. It should be completely backwards compatible with HTML::Parser version 2.2x, but has many new features and is significantly faster.
The HTML::Parser will tokenize an HTML document when the $p->parse() method is called. The document to parse can be supplied in arbitrary chunks. Call $p->parse(undef) at the end of the document to flush any remaining text. The return value from parse() is a reference to the parser object.
HTML::Parser knows which tags can contain other tags, which start tags have corresponding end tags, which tags can exist only in the <HEAD> portion of the document, and so forth. HTML::SimpleParse does not know any of these things. It just finds tags and text in the HTML you give it, it does not care about the specific content of these tags... (and more)
The HTML::Stream module provides you with an object-oriented (and subclassable) way of outputting HTML. Basically, you open up an "HTML stream" on an existing filehandle, and then do all of your output to the HTML stream. You can intermix HTML-stream-output and ordinary-print-output, if you like.