Adding to what others have already said:

CGI.pm implements its own autoloading scheme, which means that no function is loaded until you need it. This means that in normal use the module is actually a lot slimmer than it might look.

As for the namespace issues. I always use the procedural interface which gives me complete control over the functions imported into my namespace. Given that most of my HTML is going to be stored in some kind of template, many of my CGI scripts start like this:

use CGI qw(param header);

as those are the CGI.pm functions that I'm going to use.

Having said that, I do think that if the HTML functions were pulled out into another module so that CGI.pm just dealt with the CGI protocol, then that would be a good thing.

--
<http://www.dave.org.uk>

"The first rule of Perl club is you don't talk about Perl club."


In reply to Re: CGI made me bloated by davorg
in thread CGI made me bloated by mattg

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.