Here is this semester's tentative schedule; we will update it as the semester progresses.
Please note that lecture notes are provided as a supplement, and are NOT a substitute for attending lecture. In particular, these are not guaranteed, so expect technical difficulties to prevent them from being posted at least a few times in the semester, and plan accordingly to either take notes or get them from a friend if necessary.
Date Topic Reading Lecture Notes Supplemental Notes Wednesday, Jan. 18 Syllabus
OverviewChapter 1 of textbook Lecture Notes Friday, Jan. 20 Intro to compiling Chapter 1 Lecture Notes Monday, Jan. 23 Regular expressions and DFAs Chapter 2.1-2.2 Lecture Notes Wednesday, Jan. 25 More regular expressions, CFLs Chapter 2.1-2.2 Lecture Notes Friday, Jan. 27 Flex Lecture Notes flex tutorial Monday, Jan. 30 Chomsky Normal Form Lecture Notes Extra notes, sections 11 and 12 Wednesday, Feb. 1 Conversion to CNF Lecture Notes Friday, Feb. 3 The CYK algorithm Lecture Notes Extra notes, section 15 Monday, Feb. 6 LL grammars Chapter 2.3 Lecture Notes Friday, Feb. 10 LR grammars Chapter 2.3-2.4 Lecture Notes Monday, Feb. 13 LR grammars Chapter 2.3-2.4 Powerpoint slides Wednesday, Feb. 15 Scopes of variables Chapter 3 Powerpoint slides Friday, Feb. 17 Scopes and binding Chapter 3 Powerpoint slides Monday, Feb. 20 Control Flow Chapter 6 Powerpoint slides Wednesday, Feb. 22 More control Flow Chapter 6 Powerpoint slides Monday, Feb. 27 Types Chapter 7 Powerpoint slides Wednesday, Feb. 29 Records and Lists Chapter 7 Powerpoint slides Friday, March 2 Haskell various references Lecture Notes Monday, March 5 In class review Wednesday, March 7 Midterm exam Friday, March 9 Haskell Online references Lecture Notes Monday, March 19 Haskell various sources Lecture Notes Wednesday, March 21 Haskell: higher order functions Lecture Notes Friday, March 23 Haskell: more higher order functions Online references Lecture Notes Monday, March 26 Types in Haskell various sources Lecture Notes Wednesday, March 28 Modules in Haskell Lecture Notes Friday, March 30 Functors in Haskell Online references Lecture Notes Monday, April 2 More functors in Haskell various sources Lecture Notes Wednesday, April 4 Parsing with Haskell Lecture Notes Wednesday, April 11 Prolog and Logic languages Chapter 11 Lecture Notes Friday, April 13 More Prolog Chapter 11 Lecture Notes Monday, April 16 Prolog examples Chapter 11 Lecture Notes Online Tutorial Wednesday, April 18 Prolog examples Chapter 11 DFA Parser
Map coloringFriday, April 20 Scripting Languages Chapter 13 Lecture Notes Monday, April 23 Scripting Languages Chapter 13 Lecture Notes Wednesday, April 25 Scripting Languages Chapter 13 Lecture Notes Friday, April 27 Concurrency Chapter 12 Lecture Notes Monday, April 30 Concurrency Chapter 12 Lecture Notes Wednesday, May 2 Historical overview Chapter 13 Lecture Notes Friday, May 4 Game show (review)