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).

CSCB07H3 and CSCB09H3 and [CGPA 3.5 or enrolment in a CSC Subject POSt]
Quantitative Reasoning