Technically, you can do all of the same things with just pure Perl that you can do with all of the modules on CPAN installed. For that matter, technically, you could do all of the same stuff with C or assembly language, or anything else that's Turing-equivalent. (If you're not familiar with this concept, do a Google Groups search for Turing Equivalence.)

So, why do we have CPAN then? Because in practice there's often a big difference between technically can be done and what it is suitably convenient or worthwhile to do. It is *possible* to write an email client in pure Perl with no modules, but it will take you weeks just to get a very basic working start. With POP3Client, Net::DNS, and Net::SMTP, you can have the same amount done in hours. It is *possible* to write database stuff in pure Perl to interface with an RDBMS, but with DBI you can do it in a *lot* less time. It is *possible* to study up on PKWare's Zip archive file format and write your own Perl code to read and write zipfiles, but you'll spend days or weeks; with Archive::Zip you can do it in an afternoon and have time left over for testing.

In short, the value of CPAN is not in what it enables you to do, but in what it saves you from needing to do.


$;=sub{$/};@;=map{my($a,$b)=($_,$;);$;=sub{$a.$b->()}} split//,".rekcah lreP rehtona tsuJ";$\=$ ;->();print$/

In reply to Re: What could I do with just Perl? by jonadab
in thread What could I do with just Perl? by Cody Pendant

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.