JMU CS 430 Spring 2022

Programming Languages

Schedule

The following schedule is tentative, and we reserve the right to change it if bad weather or other unforeseen events make it impracticable. CPL stands for Concepts of Programming Languages, and the numbers refer to chapters and sections in this text. The letters in parentheses stand for (R)eading, (B)asic, and (P)rogramming modules. Module details, such as materials, videos, quizzes, due dates, etc., will be provided either on this website or on Canvas.

Week Date Module(s) CPL
1 Jan 18 01: Intro and Ruby 1 (R/P) 1
2 Jan 24 02: Syntax (B) 3
    03: Parsing (R) 4
3 Jan 31 04: Ruby 2 (P)  
    (intro to M5/M6 on Thu)  
4 Feb 7 05: Scope and Lifetime (B) 5
    06: Names and Bindings (R)  
    (miss Tue, Feb 8 due to SA day)  
5 Feb 14 07: Type Checking (B) 6
    08: Data Types (R)  
6 Feb 21 09: Haskell 1 (P) 15
7 Feb 28 10: Expressions (B) 7
    11: Control Structures (R) 8
8 Mar 7 12: Haskell 2 (P)  
9 Mar 21 13: Parameters (B) 9
    14: Subprogram Invocation (R)  
10 Mar 28 15: Prolog 1 (P) 16
11 Apr 4 16: Activations and Environments (B) 10
12 Apr 11 17: Prolog 2 (P)  
13 Apr 18 18: Abstraction and OOP (B) 11, 12
14 Apr 25 19: Concurrency and Error Handling (B) 13, 14
15 May 2 20: History (R) 2
    Review