The course is a survey of programming languages: their attributes, uses, advantages, and disadvantages. Topics include scopes, parameter passing, storage management, control flow, exception handling, encapsulation and modularization mechanism, reusability through genericity and inheritance, and type systems. In particular, several different languages will be studied which exemplify different language philosophies (e.g., procedural, functional, object-oriented, logic, scripting, cloud-based).

Office Hours

Wednesday, 1:00 - 2:50, Eaton 2024.


Final Project

Using Haskell, write one of

  • Suduko solver
  • Connect 4
  • cal function
  • maze generator

or come and see me about what you want to do.