Material for the second exam will overlap considerably the first
exam, most notably in patterns. Here's a list of things
which would be good to know:
- Be able to understand and create patterns. Here are some
particular things to concentrate on.
- Know what the
=~ and !~ operators do.
- Know how to create and use pattern matches and pattern replacements.
- Know how to use at least the following pattern operators:
*, +, ^, $, {}, [], ., ?,
\s and \S.
- Know how to
^ behaves in and out of [].
- Know how to use parentheses to capture a portion of a match
into
$n variables.
- Know that patterns interpolate variables.
- References, packages, and modules.
- Know how to create a reference to an existing variable,
and how to use a reference.
- Know how to pass references as parameters, and how to use them.
- Know how to create a package, and how to create a module.
- Know what a blessed reference is, and how to create one.
- Know how a method call of the form
$r->f(x), for
a blessed reference $r, is translated.
- Know how to create objects in perl.
- CGI
- Know how a CGI program differs from a static web page.
- Know how the user can get data to a CGI script.
- Through the URL as a query.
- Through the URL as path info.
- Through a form.
- Know how form data is sent to a CGI script.
- Know the difference between the POST and GET methods for
processing forms.
- Know what the CGI script must generate.
- Don't forget the content type line.
- Know why a CGI script cannot just die.
- Know about the CGI module.
- Know what sort of decoding it must provide for incoming data.
- Know how to create a query object.
- Know how to extract form data from the query object.
- Know how to use the query object to generate HTML.