Why Perl
Why Perl
- As we've already said, CGI is not a
programming language. In fact, CGI applications can be written in
just about any programming language in use today.
- So why exactly do most web developers
choose to use the programming language Perl for their CGI
applications? Could one use another language like C, C++, Apple
Script or Visual Basic instead?
- This is a good and extremely frequently
asked question. In fact, CGI applications can be written in any
programming language that is able to accept and process input,
and that is able to output the results of that processing.
- However, for most of the CGI applications
on the web, Perl has been by far the best choice for two main
reasons: 1) Perl is the right tool for the job and 2) Perl is easy.
Perl is the Right Tool for the
Job
- Perl does not attempt to be a super
language. In fact, compared to some more robust languages out
there, Perl solves only a few, though crucial, problems.
- Fortunately however, because Perl is
specialized, it does the jobs it sets out to do exceptionally
well. And, better yet, the limited set of problems that Perl can
solve happens to fit very well with the demands of CGI.
- Perl and CGI are simply a match made in
heaven. Common Gateway Interface (CGI), as its name implies,
provides a "gateway" between a human user with unexpected and
complex needs, and a powerful, command/logic oriented server. As
a gateway, CGI must perform one task very well. It must
translate.
- All CGI applications must translate the
needs of clients into server requests, and translate server
replies into meaningful and well-presented "answers". This can be
quite a chore, since computers and humans typically speak very
different languages.
- As such, CGI must be adept at
manipulating text (be it the text inputted by the client or the
text received from the server). A CGI application must be able to
take "strings" of data and translate them from one language to
another constantly and quickly.
- As it so happens, Perl has a wide
variety of tools designed to manipulate strings of data. It is,
in fact, one of the best languages around for string
manipulation.
- What's more, CGI must serve as gateway
not just for one client and one server but for as many types of
clients and as many types of servers as possible. It must be more
than a bilingual translator, it must be multilingual, providing
translation services between dozens of browser types, server
types and operating systems.
- Again Perl shines. Fortunately, Perl is
highly portable. Due to the hard work and good intentions of many
net hackers, Perl has been ported to just about every operating
system you would want to run a Web server on.
- Finally, Perl's weaknesses are not so
negative in a web environment.
- Most CGI tasks, which are ultimately at
the mercy of bandwidth speed, do not demand much gusto from the
application. While other compiled languages may boast ten times
the power and speed of Perl, with complex functions up the yazoo,
using one is like bringing in the hydrogen bomb to kill an ant.
Perl is simply the right tool for the job. Other languages are
typically overkill.
Perl is Easy
- Perl is also easy to understand. Because
Perl is an interpreted language, for example, there are no
compilers and no illegible machine code compiled applications.
What you see is what you get. The code that is run by the Web
server, is the code that you see in your text editor window.
- Since Perl is simple in design, it is
also easy to modify, maintain and customize (which is really
where the cost of software comes from anyway). That is, because
Perl source code is so legible, it is very easy for one to pick up
a script and quickly modify it to solve similar or new problems.
Perl is a cut and paste language and program logic is easily
transferred and manipulated between projects.
- The benefit of this, of course, is that
Perl is supported by a wide body of CGI freelance programmers.
Unlike the more cryptic languages like C++ or Visual Basic, Perl
is accessible to anthropology majors and computer science majors
alike. In fact, newsgroups like comp.lang.perl are often too
prolific to frequent on a regular basis. The Perl community is
thriving and thanks to the web, expanding rapidly.
- Thus, since so many people can write and
modify Perl, it is very easy for you to find someone to do it for
you cheaply and to do it well. You need not kneel at the mercy of
the few reclusive wizards of other arcane languages who
confidently slide on the curves of supply and demand. There is an
abundance of qualified, starving undergraduate and graduate
students with skills enough to solve most of your programming
needs for very cheap rates, especially if they are given working
code to modify rather than asked to write one from scratch.
Intro to CGI
Table of Contents
Introduction to Perl
|