CSCC24H3 Principles of Programming Languages

Major topics in the design, definition, analysis, and implementation of modern programming languages. Study of programming paradigms: procedural (e.g., C, Java, Python), functional (e.g., Scheme, ML, Haskell) and logic programming (e.g., Prolog, Mercury).

Prerequisite: 

CSCB07H3 and CSCB09H3 and [CGPA 3.0 or enrolment in a CSC Subject POSt]

Exclusion: 

CSC324H

Breadth Requirements: 
Quantitative Reasoning