OverviewThe course will cover most of the topics in the handbook description, though the order will be rearranged. The Winter 2012 offering will resemble the Winter 2010 offering by the same instructor, though there is also considerable resemblance to offerings in winters 2003, 2004, 2005, 2007, and 2008. We will study four programming languages: Scheme, ML, Haskell, and Smalltalk (Pharo), the last if time permits. Each of these contributes significant concepts which can be rigourously formalized. Our goal is to understand not only the idiomatic use of these languages, but also their theoretical underpinnings, and issues that arise in their implementations. The first lecture module will give a few more details on the scope of coverage of topics. |