Lesson 6 | Perl history |
Objective | Study evolution of the Perl language. |
Perl Language History
Back in the dark ages of computers, when real programmers could enter a bootstrap loader from the front panel, 640K was a lot of memory,
floppy disks were 8 inches wide, and a 30MB hard disk was considered huge, a guy named Larry Wall wrote a tool to help maintain a configuration management system that was hopelessly distributed across both U.S. coasts.
After a year of development, Larry released the first version of Perl in 1986, alternately calling it the Practical Extraction and Report Language and the Pathologically Eclectic Rubbish Lister.
Others call it the Swiss Army Chainsaw of software. The Perl language owes much of its popularity to the fact that it handles text with ease and efficiency. Once you know the language,
it's far easier to whip up a quick system-administration utility in Perl than in most other languages. And with Perl's excellent internal resource management, the utilities you write in Perl are far less prone to memory leakage, stack bashing, and other problems common to lower-level languages like C. In the next lesson, terminology will be discussed in preparation for the rest of the course.
There has been a revolution in Perl programming practice as well as its testing culture. CPAN (the Comprehensive Perl Archive Network) continues to grow exponentially, making it the killer feature of Perl .
I tell you about those modules when they are important and do not try to do everything with standard Perl.
For the diagnostic messages, you can find all of them in the perldiag manpage
, or turn warnings into longer messages with the diagnostics pragma.
Languages were first invented by humans, for the benefit of humans. In the annals of computer science, this fact has occasionally been forgotten.
Since Perl was designed by an occasional linguist, it was designed to work smoothly in the same ways that natural language works smoothly.
Naturally, there are many aspects to this, since natural language works well at many levels simultaneously. We could enumerate many of these linguistic principles here, but the most important principle of language design is that easy things should be
easy, and hard things should be possible. They may seem obvious to you, but many computer languages fail at one or the other. Natural languages are good at both because people are continually trying to express both easy things and difficult things,
so the language evolves to handle both. Perl was designed first of all to evolve, and indeed it has evolved. Many people have contributed to the evolution of Perl over the years. The camel is pretty well adapted for life in the desert and has evolved to be relatively self-sufficient.