Brett Yorgey's (UPenn) CIS 194: Introduction to Haskell course