Introduce aggregate data types (e.g., arrays, records, unions) and type systems supporting their construction in a variety of programming languages.
Introduce inductive data types—an aggregate data type that refers to itself— and variant records—a data type useful as a node in a tree representing a computer program.
Introduce abstract syntax and its role in representing a computer program.
Describe the design, implementation, and manipulation of efficacious and efficient data structures representing computer programs.
Explore the conception and use of a data structure as an interface, implementation, and application, which render it an abstract data type.
Recognize and use a closure representation of a data structure.
Describe the design and implementation of data structures for language environments using a variety of representations.
18.118.226.109