[an error occurred while processing this directive]

Perl

Menu

Note: This schedule is Tentative. The topics we cover each week will depend almost entirely on how much we were able to cover in the previous lecture.

Date Lesson Slides Topics Handouts Texts †
NONE Unix Basics *
Unix Powerpoint slides Unix PDF slides
The very basics - cd, mkdir, ls, rm, rmdir, chmod
Jan 28 Introduction to CSCI2230
Helpful Resources
Introduction to Perl
Intro Powerpoint slides Intro PDF slides
Helpful Resources Powerpoint slides Helpful Resources PDF slides
Intro_perl Powerpoint slides Intro_perl PDF slides
Policies, Info
Resources, Effective Emailing
Lexical vs Global, Scalars/Arrays/Hashes, basic I/O
ICA0
Paul's solution
C chp 1, pp 45-60, 72-78
L chp 1-3,6, pp 68-73
P intro, data
Feb 4 Interpolation
Context
Operators
File/Directory Access
Interpolation Powerpoint slides Interpolation PDF slides
Context Powerpoint slides Context PDF slides
Operators Powerpoint slides Operators PDF slides
FileIO Powerpoint slides FileIO PDF slides
variable and backslash interpolation
scalar vs list context
operators, operator precidence
open, opendir, close, <>, $/
ICA1
Paul's solution
C chp 3, pp 60-72, 78-85
L chp 1-3,5,12
P op, opentut
Feb 11 Built-In Functions
Command Line Arguments
Control Structures
External Programs
Functions Powerpoint slides Functions PDF slides
ARGV Powerpoint slides ARGV PDF slides
Loops Powerpoint slides Loops PDF slides
External Powerpoint slides External PDF slides
lc/uc, math fctns, keys, values, sort, length, index, reverse, file tests, substr
@ARGV, <> magic
if/else/unless, while/until, for/foreach, do, given/when, next/last/redo
system, backticks, pipes
ICA2
Paul's solution
C chp 29, pp 111-126
L chp 10,13, pp 193-196,198-203
P func, syn
Feb 18 Regular Expressions
RegExps Powerpoint slides RegExps PDF slides
pattern matching, search-and-replace, regexp basics, "dirty dozen"
ICA3
Paul's solution
C pp 139-178
L chp 7-8
P retut, re, reref
Feb 25 More Regular Expressions
More Built-In Functions
MoreRegExps Powerpoint slides MoreRegExps PDF slides
MoreFunctions Powerpoint slides MoreFunctions PDF slides
modifiers, lookaround assertions, transliteration
map, grep, qw//, glob, each, eval, defined, exists, undef, our
ICA4
Paul's solution
C chp 29 pp 178-202
L chp 9,16
P reref, func
Mar 4 References
Subroutines
References Powerpoint slides References PDF slides
Subroutines Powerpoint slides Subroutines PDF slides
named references, anonymous references, multi-dimensional structures
subroutines, parameters, pass-by-value, pass-by-reference, prototypes, return values
ICA5
C chp 6 & 8
L chp 4
A chp 3-4
P sub, reftut, lol, dsc, ref
Mar 11 NO CLASS
SRING BREAK
Mar 18 Object-oriented Programming
OOP Powerpoint slides OOP PDF slides
packages, classes, methods, overloading
ICA6
Paul's Solution
Pair.pm
pair.pl
Student.pm
stud.pl
C chp 10-13
A chp 2,8,9
P obj, mod, toot
Mar 25 More OOP
MoreOOP Powerpoint slides MoreOOP PDF slides
Inheritance, Exporting/Importing, testing, h2xs, documentation using POD
Person Base Class
Student Class
Student test file
ICA7
Accounts test file
Paul's BankAccount
Paul's InterestAccount
Paul's CheckingAccount
Paul's InterestCheckingAccount
C chp 12 & 26
A chp 12-15
P mod, pod
Apr 1 Useful Modules
UsefulModules Powerpoint slides UsefulModules PDF slides
integer, List::Util, Switch, File::Find, File::Basename, File::Copy, Getopt::Long, Net::FTP, POSIX, Text::Wrap, List::MoreUtils, File::Stream, Regexp::Common, LWP::Simple, Mail::Send
ICA8
Paul's Solution
P modlib
Apr 8 NO CLASS
CLASS CANCELLED
Apr 15 CGI Programming
CGI Powerpoint slides CGI PDF slides
CGI basics, forms, input types, param()
Steps For CGI
CGI Examples
ICA9
Paul's Solution (Run)
Paul's Solution (View)
P CGI
Apr 22 More CGI
MoreCGI Powerpoint slides MoreCGI PDF slides
Heredocs, cookies, file uploading, HTML::Template, Taint checking
More CGI Examples
ICA 10
Paul's Solution (Run)
Paul's Solution (View)
P CGI, HTML::Template, sec
Apr 29 Perl/Tk (GUI with Perl)
PerlTk Powerpoint slides PerlTk PDF slides
Event-driven programming, pack/place/grid, widgets, callbacks, key-binding
Steps For Perl/Tk
Hello World Tk
Packing Example Tk
Menu Tk
ICA 11
Paul's Solution
P Tk
May 6 Advanced Perl Topics
AdvPerl Powerpoint slides AdvPerl PDF slides
database access, signals, fork/exec/wait, Advanced objects
Moose Student
main for Student
ICA 12
Paul's Option A - ica12A.pl
Paul's Option B - parent
Paul's Option B - child
Paul's Option C - Pizza.pm
P ipc, Moose, DBI

* This topic will not be covered in class. It is presumed that most students have a passing familiarity with this topic. The presentation here is merely a reference for those who are not accustomed to Unix.

Letters in this column represent:
C » Camel » Programming Perl
L » Llama » Learning Perl
A » Alpaca » Intermediate Perl
P » Perldoc » perldoc perl<foo>

Perl Quotes
Perl Quotes