Below is the current calendar for the CSE413 class. Please keep in mind that Stuart is constantly updating this. It should accurately describe the past, but it won't always accurately predict the future. Links to lecture notes are included as they become available.
Monday | Wednesday | Friday |
---|---|---|
administrative details OCaml types and expressions Notes: notes |
functions Notes: notes |
mutable state, let Notes: notes Program: StringFun.java |
pattern matching Notes: notes |
mergesort tail recursion efficient reverse Notes: notes |
quicksort higher-order functions map, filter, reduce Notes: notes Lecture: cse143 Java 8 lecture Program: Java8Demo.java |
Curried functions composition of functions anonymous functions Notes: notes |
more curried functions type safety Notes: notes |
defining types Notes: notes |
more binary tree Notes: notes |
option type closures Notes: notes |
scope Java inner classes modules structures Notes: notes Program: rational1.ml |
signatures Notes: notes Program: rational2.ml Program: rational3.ml Program: rational4.ml Program: rational5.ml Program: rational6.ml |
midterm review |
midterm |
intro to Scheme Notes: notes |
let, let* internal definitions struct Notes: notes OCaml/Scheme Comparison |
higher-order functions anonymous functions equality operators Notes: notes |
how to make a repl Notes: notes |
parsing Notes: notes |
more parsing Notes: notes Program: grammar1.rkt Program: grammar2.rkt |
introduction to Ruby Notes: notes |
control structures blocks classes Notes: notes Program: range.rb |
more on yield console input file processing Notes: notes |
Memorial Day Holiday |
OOP in Ruby Notes: notes Program: tree1.txt Program: guess_odd.rb |
mixins Notes: notes Program: tree2-1.txt (ruby) Program: tree2-2.txt (Python) |
memoization Notes: notes |
Guest lecture |
review for the final |
Final Exam -- Monday, June 9, 2:30-4:20 pm |