Designation: Elective Course
Course Level: Graduate
Principles of functional, imperative, object-oriented and logic programming languages. Semantic specification including axiomatic, operational and denotational semantics. Fundamentals of type systems such as abstract data types, polymorphism, and inference. Concurrent systems. Case studies of contemporary programming languages.