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