Introduction to Perl

CST6864


Resources

Useful Web Sites:
Perlmonks
Perl.com
use Perl;
yapc
yas
The Perl Journal
search CPAN
Perldoc
ActiveState
Randal Schwartz
Mark Jason Dominus
Dave Roth
nms
Recommended Books:
Programming Perl
Learning Perl
Perl Cookbook
Advanced Perl Programming
The Perl CD Bookshelf
Mastering Regular Expressions
Writing CGI Applications with Perl
Win32 Perl: Standard Extensions
Win32 Perl: Administrator's Handbook
Network Programming with Perl
Elements of Programming with Perl
Object Oriented Perl
Data Munging with Perl
Course Description

General Description

Perl has been called 'the duct tape of the Internet' and 'the Swiss army chainsaw of programming'. Come and learn the basics of a language that is used for tasks that range from general programming to systems administration and web based applications. Through the lectures and hands-on exercises, you will be exposed not only to the syntax and constructs of Perl, but also to its philosophy, people and culture.

Objectives

Upon completion of course, students should be able to use the power of Perl's syntax and regular expressions to write simple programs to manipulate the filesystem and to interact with other processes.

Course Outline

Major Sections

  1. Introductions and Resources
  2. Perl Fundamentals
  3. Scalars
  4. Arrays and Lists
  5. Hashes
  6. Flow Control
  7. Regular Expressions
  8. Input/Output
  9. Functions
  10. Modules
  11. Other processes
  12. Win32
  13. Intro to CGI
Misc. Information

Prerequisites

Students must have some prior programming experience with C/C++, Java, Basic, Pascal, or a similar, structured programming language.

Format

One, three hour session per week for seven weeks; a total of 21 hours in the classroom. Although approximately 1/3 of the classroom hours will be devoted to "hands-on" exercises, students will realize the maximum benefit from this course by completing additional "take-home" work.

Materials

Students will receive a printed course manual of ~140 pages containing ~200 slides of notes, and a floppy disk containing exercises and their answers.
While not absolutely necessary, it is strongly recommended that students have at least one of the following texts:
  • The Camel Book - Programming Perl
    If you are comfortable with C and 'UNIX style' documentation (e.g.: man pages), this is probably a good first Perl book for you.

  • The Llama Book - Learning Perl
    If you find man pages terse and cryptic, or don't know UNIX at all, you will probably find this a better first book.
      Both of these texts are normally available at area bookstores.

Web pages specifically mentioned in the notes

Along with the general 'Useful Web Sites' listed above, these pages are recommended reading:
Suffering from Bufferingby M-J. Dominus
Coping with Scopingby M-J. Dominus
Precedence Problemsby M-J. Dominus
Taint Mode FAQby Gunther Birznieks
Web Techniques Columnsby Randal Schwartz
Regular Expressionsby Joseph Hall & Randal Schwartz (pdf)

Instructor

Stephen (Steve) Jenkins

Schedule

Next Course:

None currently scheduled