CSC254

Fall 2024 - MW 1025-1140 - Wegmans 1400

Mon Day DOW Special Class Lecture Unit Topic Reading Project
8 26 M   1 1 Introduction Intro PLP 1.0-1.5  
8 28 W   2 2   Structure of a compiler PLP 1.6-1.7  
9 2 M Labor Day            
9 4 W   3 3 Syntax Lexical Analysis (Scanning) PLP 2.0-2.2; CS 2.4.0-2.4.1  
9 9 M   4 4   Parsing: Top-down, Predictive, Recursive descent PLP 2.3.0-2.3.2; CS 2.3.5 (pp. 1-6)  
9 11 W   5 5   Parsing: Bottom-up, Error recovery PLP 2.3.3; CS 2.3.5 (except pp. 10-12) Project 1 Due
9 16 M   6 6 Names Binding, Storage, Scope PLP 3.0-3.4  
9 18 W   7 7   Scope, Binding of Reference Environments, Macros PLP 3.4-3.7, 3.9  
9 23 M   8 8 Semantics Semantic Analysis, Attribute Grammars, Action Routines PLP 4.0-4.5  
9 25 W   9 9   Tree Grammars and Syntax Tree Decoration PLP 4.6-4.7  
9 30 M   10 10 Control Flow Expressions, sequencing, and selection PLP 6.0-6.4  
10 2 W   11 11   Iteration and recursion PLP 6.5-6.8  
10 7 M   12   TBD     Project 2 Due
10 9 W   13   Midterm Exam Midterm Exam    
10 14 M Fall Break            
10 16 W   14 12 Code Generation and Runtime Systems Code generation, assembly PLP 15.0-15.3  
10 21 M   15 13 Type Systems Type systems, type checking PLP 7.0-7.2  
10 23 W   16 14   Polymorphism/Generics PLP 7.3-7.5; CS 7.3.2  
10 28 M   17 15 Composite Types Records and arrays PLP 8.0-8.4  
10 30 W   18 16   Pointers, references, and dynamic storage management PLP 8.5  
11 4 M   19 17 Control Abstraction Subroutines, stack management, parameter passing PLP 9.0-9.3  
11 6 W   20 18   Exceptions, events PLP 9.4.0-9.4.3, 9.6 Project 3 Due
11 11 M   21 19 Data Abstraction and Object Orientation Review and implementation PLP 10.1-10.6.1 (skim all of it; read 10.4 and 10.5 carefully)  
11 13 W   22 20 Concurrency Threads PLP 13.0-13.2.3, 9.5, 13.2.4  
11 18 M   23 21   Synchronization, Language Mechanisms PLP 13.3  
11 20 W   24 22 Run-Time Program Management Virtual Machines, JVM, JIT, Reflection PLP 16.0-16.1.1, 16.2 (through HotSpot example), 16.3 (Java only)  
11 25 M   25   TBD      
11 27 W Thanksgiving            
12 2 M   26 23 Functional Programming A Little Bit of Scheme/Lisp PLP 11.0-11.2, 7.2.4, 8.6, 11.3  
12 4 W   27 24   Evaluation order, higher-order functions PLP 11.5-11.6, 11.8-11.9 Project 4 Due
12 9 M   28   Midterm 2 Midterm 2    

Last change: Wed Oct 16 09:28:56 2024