Introduction To Perl
Perl, in the eyes of it's creator Larry Wall, is a "...language for getting
your job done." What is it that you need to get done exactly? The things
that you do basically every day in the computer world. Some of these things
include:
- manipulation of numbers
- manipulation of text
- manipulation of files & directories
- computer management (remote & local)
- network control
- running external programs, in order to scan output
It is possible to accomplish most kinds of work in a 'complete'
programming language such as JAVA or C++, so the real difference
between Perl and everything else isn't in its capabilities, but the fact
that almost everything about it is easy.
Perl is designed to make the easy jobs easy, without making the difficult jobs
impossible. Perl was originally designed as a 'glue' language;
a language simply used to fill in the gaps between other languages, systems,
and interfaces. Since its inception it has become much more; Perl offers
features such as:
- the ability to program in the object oriented or functional paradigm
- a rich feature set, encompassing all of the good parts of C, sh, sed, awk, and others.
- a full set of data reduction and manipulation operators
- file, directory, and file system manipulation capabilities
- process and procedure management
- database functionality
- client - server programming capabilities
- secure programming features
- web-based information management abilities
- multiple development environments and options
- multiple compilation / interpretation options
What makes Perl truly special? Here are some things that have been
described as the "Perl Magic":
- utility of the feature set
Perl has a rich feature set, but every item has its place and reason for being
there. Since Perl Is a 'glue' language, new features that are
incorporated into the language act as if they have always been there, and
compliment the pre-existing operations nicely. A good example of this idea is the
fact that Perl has evolved from a functional script language into a fully
featured Object Oriented language.
- inventiveness of the community
Perl has an extensive and knowledgeable community to back up every aspect of the
language. Developers (many of which work full time elsewhere to sustain
themselves) donate many hours of their own time to add features, fix bugs, and
answer questions in regards to Perl. Professional Perl programmers are always
willing to answer questions posted to the various websites and newsgroups of the
Perl world.
- exuberance of open source
The "Open Source" world can be viewed in two different ways; a loosely knit
group of hackers meant to 'overthrow' the business world with their 'hippy'
attitudes toward capitalism, or a dedicated and well organized community of
computer savvy individuals who want to make the world a better place. Love it
or hate it, open source software (led primarily through the efforts of the FSF and
GNU) is here to stay. Just because software is free, you do not necessarily
'get what you pay for' in your products. Most members of the
open source community will always back their products, and continue to make it
better for the good of all.
- hybrid vigor
Perl has been described as a 'give me your tired, give me your poor' language,
following the same spirit that started America. Perl is for UNIX
people, forced to migrate to a 'Windows world' who wish to be able to
bring the 'the old country' with them. Perl is also for Windows people,
forced into UNIX and yearning for portable code. A mixed diversity is more
of a strength than a weakness in the eyes of the Perl pioneers.
Perl is a highly portable software application, and is available on virtually
any platform; almost every current *NIX contains a Perl system, Windows &
Macintosh users may download numerous Perl development kits, there are even
ports of Perl available for old Atari PC's!
Afraid to get started in something new? Don't be. Perl borrows heavily from
other languages: C / C++ (JAVA), awk, sed,
sh, BASIC, Python, and English. There
is no need to learn every feature right off the bat, Perl was designed to be used
'small end' first. It is possible to start programming Perl
almost immediately if you currently know at least one language. It is also
possible for any programmer to read some well written Perl code.
All of the ranting aside, lets get started!
Index <Intro>
History
Created By: Jason Zurawski
Last Modified: Feb. 29, 2004