|
|
|
Schedule for 2009Books, WWW tutorials, and code editors |
| Lec |
Date |
Topic |
Problems |
| 1 |
1.20 |
Course
organization Elements of a programming language Scalars and arrays |
Problem set 1 |
| 2 |
1.27 |
Perl
terminology: blocks, statements, expressions More scalars and arrays Logical, arithmetic, and unary operators Hashes (associative arrays) |
Problem set 2 |
| 3 |
2.3 |
Control
structures: conditional expressions and loops Pseudocode |
Problem set 3 |
| 4 |
2.10 |
Subroutines and
parameter passing |
Problem set 4 |
| 5 |
2.17 |
Writing readable code Variable scope |
Problem set 5 |
| 6 |
2.24 |
String and array
operations |
Problem set 6 |
| 7 |
3.3 |
File reading and
writing (IO operations) |
Problem set 7 |
| 8 |
3.10 |
Regular expressions |
Problem set 8 |
| BREAK |
|||
| 9 |
3.24 | References |
Problem set 9 |
| 10 |
3.31 | More fun with references | Problem set 10 |
| 11 |
4.07 | Sorting and function
references |
Problem
set 11 |
| 12 |
4.14 | Using modules to collect
reusable subroutines |
Problem
set 12 |
| 13 |
4.21 | Algorithm
development Project design document due by 4.28 Sample projects may be found here |
Problem set 13 |
| 14 |
4.28 | Algorithm
development |
Problem set 14 |
| 15 |
5.05 | Review and class exercises | No problem set |
| Final project due Friday 5.15 |
BooksNo books are required, but these are good for reference.Learning Perl, 5th ed. Schwartz et al., O'Reilly. Programming Perl, 3rd Ed. Wall et al., O'Reilly. Perl Programming for Biologists, Jamison, Wiley WWW tutorialsIntroduction to Perl ProgrammingGetting Started With Perl Essential Perl Weizmann Institute course taught by Jaime Prilusky Text editors that are much nicer for writing programs than NotepadThese editors will do syntax highlighting, autoformatting, line numbering, sometimes syntax checking, and many other useful things that the basic text editor that comes with your operating system doesn't. For Windows: Open Perl IDEFor Mac OS X: TextWrangler For any OS: Eclipse with EPIC Perl plugin (I use Eclipse, but it takes some learning) |