CS 275: Programming Abstractions

DateTopic and readingAssignments
Week 1
Mon, Feb 03Introduction [slides]
Reading
  • RPTFW. OPTIONAL: Chapter 2 (skip “Complex Numbers” and “Infix Notation”).
  • The Racket Guide. OPTIONAL: Section 4.3 through 4.3.1.
Wed, Feb 05Procedures & Choice [slides]
Reading
  • RPTFW. Chapter 1 (start with “Define, Assign, and Variables” through “Strings and Things”).
  • The Racket Guide. Sections 2.2.5, 4.4, 4.5, 4.7.
Fri, Feb 07Basic Building Blocks [slides]
Reading
Week 2
Mon, Feb 10Testing, Style & Modules [slides]
Reading
Wed, Feb 12Function Design - Part 1 [slides]
Reading
Fri, Feb 14Environments & Evaluation [slides]
Reading
  • RPTFW. Chapter 3 (“What is a function?”, “Lambda functions,” and “Conditional Expressions”).
  • The Racket Guide. Section 4.6 through 4.6.3; sections 4.6.4 and 4.6.5 are optional.
Week 3
Mon, Feb 17Function Design - Part 2 [slides]
No reading
Wed, Feb 19Tail recursion and map [slides]
Reading
Fri, Feb 21Fold Right [slides]
Reading
Week 4
Mon, Feb 24Folds [slides]
Reading
Wed, Feb 26Higher Order Wrap Up [slides]
No reading
Fri, Feb 28Structs & Data Types [slides]
Reading
Week 5
Mon, Mar 03Typed Racket [slides]
Reading
Wed, Mar 05Types & Computation [slides]
No reading
Fri, Mar 07Exam 1 Review [slides]
No reading
Week 6
Mon, Mar 10Exam 1
No reading
    Wed, Mar 12MiniScheme Start [slides]
    No reading
    Fri, Mar 14MiniScheme A & B [slides]
    No reading
    Week 7
    Mon, Mar 17MiniScheme C [slides]
    No reading
    Wed, Mar 19MiniScheme C part 2 [slides]
    No reading
    Fri, Mar 21MiniScheme D [slides]
    No reading
    Week 8
    Mon, Mar 24No class: spring break
    No reading
      Wed, Mar 26No class: spring break
      No reading
      Fri, Mar 28No class: spring break
      No reading
      Week 9
      Mon, Mar 31MiniScheme E [slides]
      No reading
      Wed, Apr 02Streams - Part 1 [slides]
      No reading
      Fri, Apr 04Streams - Part 2 [slides]
      No reading
      Week 10
      Mon, Apr 07MiniScheme F [slides]
      No reading
      Wed, Apr 09MiniScheme G [slides]
      No reading
      Fri, Apr 11MiniScheme H [slides]
      No reading
      Week 11
      Mon, Apr 14Scoping Methods [slides]
      No reading
      Wed, Apr 16Scoping Example: Control Flow Design [slides]
      No reading
      Fri, Apr 18Exam 2 Review [slides]
      No reading
      Week 12
      Mon, Apr 21Exam 2
      No reading
      Wed, Apr 23Parameter Passing Mechanisms [slides]
      No reading
      Fri, Apr 25Learning a Language - Part 1 [slides]
      No reading
      Week 13
      Mon, Apr 28No class: work on HW 9
      No reading
      Wed, Apr 30Learning a Language - Part 2
      No reading
      Fri, May 02Theoretical Concerns
      No reading
      Week 14
      Mon, May 05More lambda calculus
      No reading
      Wed, May 07Y combinator
      No reading
      Fri, May 09Practical Concerns
      No reading