CSE 413 Winter 2019
Lecture Topics

Subscribe to this calendar (Google, iCal, etc.)

DateDescription
January 7 Overview & Racket intro
slides demo transcript
January 9 Racket intro; Lists
Racket basics (notes) code
January 11 Lists and functions, memory diagrams
code diagrams
January 14 Lists, functions, let
code diagrams
January 16 let/let*, tail recursion; function parameters; higher-order functions (map, filter)
Recursion patterns: notes, code, diagrams
January 18 Higher-order functions (map, filter); Functions as values; lambdas
code
January 23 Higher-order functions; intro to environments and execution
code, diagrams
January 25 Closures and environments
code, diagrams
January 28 Closures and environments (trace) (same code from Friday)
diagrams
January 30 Lazy evaluation, streams, and memos
slides notes code
February 1 Promises, streams, and memos
February 4 UW closed - snow; no class
February 6 Racket structs, implementing interpreters
slides code
February 8 No class - UW closing at 12:30 because of weather
February 11 UW closed - snow, etc.; no class
February 13 Interpreters, hw5
more code MUPL demo
February 20 Ruby intro, containers, blocks, and procs
slides: intro, containers; code: silly.rb, Rat.rb
February 22 Ruby: duck typing, inheritance, mixins, and modules
slides; code: Points.rb inherit.rb
February 25 Parsers, scanners, grammars, and derivations
slides
February 27 Regular expressions and scanners
March 1 Grammars and parsing
slides
March 4 Grammars, ambiguity (concl.); LL parsing (start)
slides
March 6 LL grammars and top-down parsing; grammar hacking
March 8 Memory management: reference counting
overview   lecture outline
March 11 Memory Management: garbage collection
March 13 Memory Management (concl.)
March 15 Course wrapup