CSCE 531 Spring 2008: Syllabus (subject to change)

The textbook is: Watt, David A. and Deryck F. Brown Programming Language Processors in Java. Prentice-Hall, 2000 (required text). Supplementary materials from the author, including an errata list, are available.

The last day to withdraw without failure is Monday, February 25, 2008. The final exam for the course will take place on Wednesday, April 30, 2008, at 9am in the classroom (Swearingen 2A21). This is the regularly scheduled time for courses taught from 1115 to 1205 on Mondays, Wednesdays, and Fridays. ( See the university exam schedule.) The syllabus is subject to change: this is especially true of homework.

Week BeginsTopicLecture #1Lecture #2 Lecture #3Homework
(1) January 14Introduction; Syntax, Semantics, and Language Processors (1) Ch.1 (2) Ch.1 (3) Chs. 1 and 2Exercises 1.2, 1.4-1.6
(2) January 21Syntax, Semantics, and Language Processors (3) No class (4) Ch.2 (5) Ch.2 TBA
(3) January 28Compilation (Overview) (6) Ch.3 (7) Ch.3 (8) Ch.3 Exercises 2.2, 2.3, 2.4, 2.5, 2.6, 2.8, 2.9
(4) February 4Syntactic Analysis (9) Ch.4 (10) Ch.4 (11) Ch.4 Exercises 3.1, 3.2, 3.3, 3.5, 3.6
(5) February 11Syntactic Analysis (12) Ch.4 (13) Ch.4 (14) Ch.4 lex (or Jlex) and yacc (or Cup or javacc) exercises. Exercises 4.1, 4.2, 4.3, 4.4, 4.5, 4.6, 4.7, 4.8, 4.9, 4.11, 4.12, 4.13.
(6) February 18Test (15) Test (16) Test Post-Mortem (17) Ch.4 Programming exercises: 4.10, 4.14, 4.20, 4.22.
(7) February 25 Contextual Analysis (18) Ch.5 (19) Ch.5 (20) Ch.5 See following week.
(8) March 3 Contextual Analysis (21) Ch.5 (22) Ch.5 (23) Ch.5 Exercises: 5.1, 5.5, 5.6, 5.7, 5.9. Programming exercises: 5.3, 5.4.
(9) March 10 Spring Break No Class No Class No Class NA
(10) March 17 Run-Time Organization (24) Ch.6 (25) Ch.6 (26) Ch.6 Exercises: 6.1, 6.2, 6.4, 6.5, 6.6, 6.7, 6.10, 6.11, 6.16, 6.18, 6.19, 6.21, 6.32, 6.33.
(11) March 24 Code Generation (27) Ch.7 (28) Ch.7 (29) Ch.7 Exercises: 7.1, 7.2, 7.3, 7.4, 7.5, 7.6.
(12) March 31 Code Generation and Projects (30) Ch.7 (31) Ch.7 (32) Assignment of Projects (Subset of) 9.6--9.18
(13) April 7 Interpretation (33) Ch.8 (34) Ch.8 (35) Ch.8 8.5, 8.6 (TBC)
(14) April 14 Conclusion and Advanced Topics (36) Project Discussion (37) Ch.9 (38) Ch.9 TBD
(15) April 21 Conclusion and Advanced Topics (39) Ch.9 (40) Open (41) Open TBD
(16) April 28 Open (42) Open No class No class TBD