That's
so at odds with Perl's description of itself, as listed in
perldoc:perl:
Perl is a language optimized for scanning arbitrary text files,
extracting information from those text files, and printing reports based
on that information. It's also a good language for many system
management tasks. The language is intended to be practical (easy to use,
efficient, complete) rather than beautiful (tiny, elegant, minimal).
Perl combines (in the author's opinion, anyway) some of the best
features of C, sed, awk, and sh, so people familiar with those languages
should have little difficulty with it. (Language historians will also
note some vestiges of csh, Pascal, and even BASIC-PLUS.) Expression
syntax corresponds closely to C expression syntax. Unlike most Unix
utilities, Perl does not arbitrarily limit the size of your data--if
you've got the memory, Perl can slurp in your whole file as a single
string. Recursion is of unlimited depth. And the tables used by hashes
(sometimes called "associative arrays") grow as necessary to prevent
degraded performance. Perl can use sophisticated pattern matching
techniques to scan large amounts of data quickly. Although optimized for
scanning text, Perl can also deal with binary data, and can make dbm
files look like hashes. Setuid Perl scripts are safer than C programs
through a dataflow tracing mechanism that prevents many stupid security
holes.
If you have a problem that would ordinarily use sed or awk or sh, but it
exceeds their capabilities or must run a little faster, and you don't
want to write the silly thing in C, then Perl may be for you. There are
also translators to turn your sed and awk scripts into Perl scripts.
But wait, there's more...
Begun in 1993 (see perlhist), Perl version 5 is nearly a complete
rewrite that provides the following additional benefits:
- modularity and reusability using innumerable modules
- Described in perlmod, perlmodlib, and perlmodinstall.
- embeddable and extensible
- Described in perlembed, perlxstut, perlxs, perlcall, perlguts, and
xsubpp.
- roll-your-own magic variables (including multiple simultaneous DBM
implementations)
- Described in perltie and AnyDBM_File.
- subroutines can now be overridden, autoloaded, and prototyped
- Described in perlsub.
- arbitrarily nested data structures and anonymous functions
- Described in perlreftut, perlref, perldsc, and perllol.
- object-oriented programming
- Described in perlobj, perlboot, perltoot, perltooc, and perlbot.
- compilability into C code or Perl bytecode
- Described in B and B::Bytecode.
- support for light-weight processes (threads)
- Described in perlthrtut and Thread.
- support for internationalization, localization, and Unicode
- Described in perllocale and utf8.
- lexical scoping
- Described in perlsub.
- regular expression enhancements
- Described in perlre, with additional examples in perlop.
- enhanced debugger and interactive Perl environment, with integrated
editor support
- Described in perldebtut, perldebug and perldebguts.
- POSIX 1003.1 compliant library
- Described in POSIX.
Okay, that's *definitely* enough hype.
-- Randal L. Schwartz, Perl hacker
Be sure to read my standard disclaimer if this is a reply.
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: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.