|BU CAS CS 320|
|Concepts of Programming Languages|
OverviewConcepts of Programming Languages is a course that introduces students to some fundamental concepts in programming language design and implementation. The primary goal is to allow students who complete this subject to have a good feel for the elements of style and aesthetics of programming and a good command of the major techniques for controlling complexity in programming.
ATS is a functional programming language that makes extensive use of types in capturing programming invariants. We are to explain how datatypes in ATS can be employed to conveniently model data structures and how pattern matching can facilitate programming with datatypes. Also, we are to make use of the module system of ATS in the construction of (relatively) large programs.
Ultimately, we would like to make a convincing argument that programming can be a great deal of fun.