Topics

Topics, Introduction to Programming for Linguists


Return to the course home page

A syllabus never stops evolving.

Class* Topic Readings* Assignments Other
1 Course overview; Functions and Data Ch 1 Exercises 1 none
2 Lists and list operations Ch 2 Exercises 2 none
3 Lab Session***: CMU LISP and the debugger Ch 3 Laboratory 1: Using CMU LISP Solution
4 Evaluation in LISP Ch 3 Exercises 3 none
5 Evaluation in LISP, continued Ch 3 Exercises 4 none
6 Conditionals Ch 4 Program 1: lemmatization using suffix replacement rules Solution
7 Conditionals, cont'd; Local and Global Variables Ch 5 Exercises 5 none
8 List-based Data Structures Ch 6 Exercises 6 none
9 Applicative Programming Ch 7 Exercises 7 none
10 Recursion Ch 8 Program 2: search in directed graphs Solution 2a, Solution 2b
11 Recursion, continued Ch 8 Exercises 8 none
12 Recursion, continued Ch 8 Continue Exercises 8, do Towers of Hanoi exercise none
13 Writing Programs from Scratch none Distance in an IS-A hierarchy none
14 Lab Session***: Writing a program from scratch Ch 9, incl. 9.8, 9.11 Exercises 9 none
15 Input/Output Ch 9, incl. 9.8, 9.11 Program 3: finite-state automata Solution
16 Assignment, Iteration Ch 10, incl. 10.8-9; Ch 11, incl. 11.13-15 Exercises 10 none
17 Iteration, continued Ch 11, incl. 11.13-15 Exercises 11 none
18 Structures and the type system Ch 12, incl. 12.8-10 Exercises 12 none
19 Structures and the type system, cont'd Ch 12, incl. 12.8-10 Program 4: Using file I/O and iteration Solution
20 Arrays, Hashtables, and Property Lists Ch 13, incl. 13.11 Exercises 13 none
21 Arrays, Hashtables, and Property Lists, cont'd Ch 13, incl. 13.11 none none
22 Macros, LISP wrap-up Ch 14, incl. 14.15, 14.17 Look at Final Project none
23 Discuss final project, start Perl Optionally look at Picking up Perl and/or browse Perl style guide. We may or may not use these. Also see the Perl manual's documentation of Perl functions.

Perl Assignment P1 notes
24 Perl: scalars, arrays, simple I/O, basic control structures Optional: Learning Perl, Ch. 2-4 Perl Assignment P2 solutions
25 Perl: arrays and lists, more loops, hashes, file I/O Optional: Learning Perl, Ch. 3-6 Perl Assignment P3 solutions, notes
26 Perl: file I/O cont'd, pattern matching Optional: Learning Perl, Ch 7 Read through make_survey.prl none
27 Perl: pattern matching cont'd, subroutines Optional: Learning Perl, Ch 8 Perl Assignment P4 (Program); extra credit assignment Examples: make_survey.prl, survey_materials.random; P4 solution; extra credit solution
28 Perl: TBA TBA TBA none

*A separate list of class dates gives the planned date for each class.

**Readings and exercises are from Touretzky (1990) unless otherwise specified.

***Unless otherwise specified, lab sessions will be held in the IBM NT WAM Lab in the Computer and Space Sciences Building, Room 3330. Click here for a map and directions to the CSS Building. I recommend that you try to come a little early in order to locate Room 3330.

Return to the course home page