· Preliminary Concepts
· Grammars and Syntax
· Semantics
· Types and Bindings
· Primitive and Complex Types
· Functional Languages
· Expressions and Assignment Statements
· Control Structures
· Declarative Languages and Prolog
· Subprogram Issues and Implementation
· Abstract Data Types and Object-Oriented Programming
· Concurrency and Exceptions