We begin the discussion of Basic/Intermediate Perl
regular expressions. After a quick refresher on the basics of regular
expressions, we go a bit beyond the basics. We also discussed when
regular expressions aren't the right tool for the job, readability,
and tips for improving your regular expressions.
We went through the documentation and some examples
of the PAR module. This module supports building Perl ARchives (like
JARs, except for Perl). It also supports turning those PAR files into
executables.
We discussed two basic parts of the Perl language:
references and different forms of quoting. Wade covered the basics of
references, including how to create and use them. We also touched on
objects. Next we turned to Perl's many quoting operators, how they
are used, and how they differ.
We covered several ways to test Perl scripts and
modules, focusing mostly on Test::More. We also discussed
an interesting technique to make a script testable as a module.
We began a rapid dive into Object Oriented
programming in Perl. We started with the basics of what constitutes
object oriented programming (OOP). Then, we covered how these
concepts are implemented with Perl. The session should be just
enough to get you started in OOP with Perl.
Wade gave a brief introduction to the Perl DBI. The
DBI is Perl's new modular relational database framework. We discussed
how to call the DBI for a particular RDBMS, a little SQL overview, and
some of the ways to extract data with DBI.
Wade gave a quick introduction to Perl/TK. We
walked through building a simple GUI and covered a few techniques for
making Perl/Tk programs more maintainable.
We got into CGI.pm since we had covered the basics
of what you could do with TT2 without using CGI, so we covered
enough of CGI.pm to allow continued exploration of TT2 if
desired.
This presentation was a grab-bag of some important
features of the language, including statement modifiers, loop control,
regular expression options, and the map operator.
The standard Perl distribution comes with a large
number of goodies in the form of standard modules. Although there was
not enough time to cover all of these modules in depth, Chuck did
cover many of the most useful modules.
As you should expect from Perl, there are several
ways to process command line options. Chuck covers several methods
from manual processing through several modules that provide better
interfaces.