Week | Monday | Wednesday | Fridays |
Week 1 | 01/03/2005 Introduction, compiling vs. interpreting Reading: Pratt, 1.1, 1.2, 2.1.3 |
01/05/2005 Grammars Notes on parse trees Reading: Pratt, pp.24-25 (Syntax and Semantics), 3.1, 3.1.2, 3.2, 3.2.1, 3.3, 3.3.1 Homework:Homework 1 (due Jan 12 10:30am by hardcopy in class) |
01/07/2005 Grammars and precedence and associativity , Syntax charts, attribute grammars Assignment statement grammar for C++/Java Reading: Pratt, 3.3.1 (continued), 4.2 (pp. 125-126), 4.2.1 |
Week 2 | 01/10/2005 Regular expressions, recursive descent parsing Reading: Pratt, p. 99, 3.4 |
01/12/2005 Languages using grammars Reading: Pratt, p. 102, Yacc documentation |
01/14/2005 Variables -- design criteria, aliasing Reading: Pratt, 1.3.1, 5.1.1, pp. 361-363, 388-389 |
Week 3 | 01/17/2005 Martin Luther King Day |
01/19/2005 Variables -- binding times, scope rules Reading: Pratt, 2.2.3, 9.2.2 |
01/21/2005 Variables -- types, type equivalence, subtypes Reading: Pratt, 5.1.2-5.1.4 |
Week 4 | 01/24/2005 Review for exam 1 |
01/26/2005 Exam 1 |
01/28/2005 Lisp -- introduction Reading: Successful Lisp (a nice Lisp tutorial recommended by Prof. Holz) |
Week 5 | 01/31/2005 Storage allocation -- stack, heap, static, garbage collection Reading: Pratt, 10.1-10.3 |
02/02/2005 Control structures -- design issues, syntax Reading: Pratt, 8.1-8.3.2 |
02/04/2005 Control structures -- semantic questions, recursion |
Week 6 | 02/07/2005
Lisp, continued |
02/09/2005
Functions -- storage and scope issues Reading: Pratt, 9.2 |
02/11/2005 Parameter passing, stack and static implementations Reading: Pratt, 9.3 |
Week 7 | 02/14/2005
Stack implementations (continued), Methods Reading: Pratt, 9.1 |
02/16/2005 Exception handling Reading: Pratt, 11.1.1 |
02/18/2005 Review for exam 2 |
Week 8 | 02/21/2005 Exam 2 Last day to withdraw |
02/23/2005 Logic programming -- Prolog Reading: Pratt, 8.4 Reading: Learn Prolog Now -- a fairly gentle introduction |
02/25/2005 Prolog, continued |
Week 9 | 02/28/2005 Data abstraction Reading: Pratt, 7.1, 7.3 |
03/02/2005
XML Reading: Pratt, 12.2.4 |
03/04/2005
Reading: Pratt, 7.2 Object-oriented programming |
Week 10 | 03/07/2005
Object-oriented programming, continued |
03/09/2005
Concurrency in programming languages Reading: Pratt, 11.2 |
03/11/2005 Review for final |
Week 11 | 03/14/2005
Final exam, 9AM-10:50AM |
03/16/2005 | 03/18/2005 |