CS 275: Programming Abstractions

DateTopic and readingAssignments
Week 1
Fri, Aug 30Introduction [slides]
Reading
  • RPTFW. OPTIONAL: Chapter 2 (skip “Complex Numbers” and “Infix Notation”).
  • The Racket Guide. OPTIONAL: Section 4.3 through 4.3.1.
    Week 2
    Mon, Sep 02No class: Labor Day
    No reading
      Wed, Sep 04Procedures & 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, Sep 06Basic Building Blocks [slides]
      Reading
      Week 3
      Mon, Sep 09Testing, Style & Modules [slides]
      Reading
      Wed, Sep 11Function Design - Part 1 [slides]
      Reading
      Fri, Sep 13Environments & 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 4
      Mon, Sep 16Function Design - Part 2 [slides]
      No reading
      Wed, Sep 18Tail recursion and map [slides]
      Reading
      Fri, Sep 20Fold Right [slides]
      Reading
      Week 5
      Mon, Sep 23Folds [slides]
      Reading
      Wed, Sep 25Higher Order Wrap Up [slides]
      No reading
      Fri, Sep 27Structs & Data Types [slides]
      Reading
      Week 6
      Mon, Sep 30Typed Racket [slides]
      Reading
      Wed, Oct 02Types & Computation [slides]
      No reading
      Fri, Oct 04Catchup and Exam 1 Review [slides]
      No reading
      Week 7
      Mon, Oct 07Exam 1
      No reading
      Wed, Oct 09MiniScheme Start [slides]
      No reading
      Fri, Oct 11MiniScheme A & B [slides]
      No reading
      Week 8
      Mon, Oct 14MiniScheme C [slides]
      No reading
      Wed, Oct 16MiniScheme C part 2 [slides]
      No reading
      Fri, Oct 18MiniScheme D [slides]
      No reading
      Week 9
      Mon, Oct 21No class: fall break
      No reading
        Wed, Oct 23No class: fall break
        No reading
        Fri, Oct 25No class: fall break
        No reading
        Week 10
        Mon, Oct 28MiniScheme E [slides]
        No reading
        Wed, Oct 30Streams - Part 1 [slides]
        No reading
        Fri, Nov 01Streams - Part 2 [slides]
        No reading
        Week 11
        Mon, Nov 04MiniScheme F [slides]
        No reading
        Wed, Nov 06MiniScheme G [slides]
        No reading
        Fri, Nov 08MiniScheme H [slides]
        No reading
        Week 12
        Mon, Nov 11Scoping Methods [slides]
        No reading
        Wed, Nov 13Scoping Example: Control Flow Design [slides]
        No reading
        Fri, Nov 15Parameter Passing Mechanisms [slides]
        No reading
        Week 13
        Mon, Nov 18Exam 2 Review [slides]
        No reading
        Wed, Nov 20Exam 2
        No reading
        Fri, Nov 22Learning a Language - Part 1 [slides]
        No reading
        Week 14
        Mon, Nov 25Learning a Language - Part 2 [slides]
        No reading
        Wed, Nov 27Theoretical Concerns
        No reading
        Fri, Nov 29No class: Thanksgiving
        No reading
        Week 15
        Mon, Dec 02More lambda calculus
        No reading
          Wed, Dec 04Y combinator [slides]
          No reading
          Fri, Dec 06Practical Concerns [slides]
          No reading
          Week 16
          Mon, Dec 09Practical Concerns [slides]
          No reading
          Wed, Dec 11Wrap up
          No reading