Ideal Language Features
One of the most important interfaces that the chosen development
language must offer, either as a part of the core language
or by readily available extension to the language, is CGI.
As CGI is an interface it allows you to write programs that
access this interface in any development language - the requirement
that the development language must already offer support for
this interface is due to restrictions on development time.
HTTP is the underlying mechanism on which CGI operates therefore,
as HTTP is a mostly text based protocol, “ease of text
manipulation” and “inherent pattern matching”
are very important features that we would like in our chosen
Due to the very limited development time available, the other
main consideration is the availability of core functionality,
software libraries and extensions available to the development
The section below contains a list of advantages and disadvantages
of the development languages being considered to implement
Perl is a scripting language, and was originally developed
for text processing purposes and as such Perl’s pattern
matching boast features not found in other language’s
implementation of pattern matching. Due to the nature of the
language, it is often used to automate non-trivial system
tasks and used as an all-purpose development language - it
can be used to rapidly create very powerful programs to perform
incredibly complicated tasks. A major advantage of the Perl
programming language is its large following and the availability
of software packages to achieve almost any goal - (In Perl)
Most of the things you want to do have already been done.
Two very good examples of this are the Net::NTTP and the CGI
Perl modules, both of which would prove invaluable when creating
a piece of software of this type.