WClasses

CS 442 - Principles of Programming Languages

An exposure to important concepts and issues in contemporary programming languages. Data types, abstraction, and polymorphism. Program structure. Lambda calculus and functional programming, logic programming, object-oriented programming. Semantics of programming languages. Critical comparison of language features and programming methodologies using examples drawn from a variety of programming languages including Lisp, Prolog, ML, Ada, Smalltalk, Icon, APL, and Lucid. Programming assignments involve the use of some of these languages.

Prerequisites

CS241 or CS241E; One of CS245, CS245E, SE212; One of CS246, CS246E, CS247; Honours Business & CS, Honours Computer Science, Honours Data Science, Honours Computing and Financial Management or Software Engineering students

Corequisites

None

Antirequisites

None

Offerings

Winter 2026 [1261]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001579440 / 7016:00 - 17:20 T,Th
TST 101849440 / 7018:30 - 20:00 F

Winter 2025 [1251]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001587554 / 7008:30 - 09:50 T,Th

Winter 2024 [1241]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001589859 / 7511:30 - 12:50 T,Th

Winter 2023 [1231]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001602665 / 7516:00 - 17:20 T,ThMC 4020Gregor Richards
TST 101885065 / 7519:00 - 20:50 W

Winter 2022 [1221]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001589065 / 7008:30 - 09:50 T,ThRCH 309Gregor Richards

Winter 2021 [1211]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 041594159 / 70 Gregor Richards
LEC 042927550 / 70 Gregor Richards

Winter 2020 [1201]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001578859 / 6011:30 - 12:50 T,ThMC 4040Brad Lushman

Winter 2019 [1191]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001566357 / 6011:30 - 12:50 T,ThMC 4040Bradley Michael Lushman

Winter 2018 [1181]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001571957 / 6013:00 - 14:20 T,ThMC 4045Prabhakar Ragde

Winter 2017 [1171]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001545059 / 7010:00 - 11:20 T,ThMC 1056Bradley Michael Lushman

Fall 2016 [1169]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 00194443 / 1

Winter 2016 [1161]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001599048 / 6010:00 - 11:20 T,ThMC 4040Bradley Michael Lushman

Fall 2015 [1159]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 00189911 / 1

Winter 2015 [1151]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001577852 / 6510:00 - 11:20 T,ThMC 2054Prabhakar Ragde

Winter 2014 [1141]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001559059 / 6614:30 - 15:50 T,ThMC 2034Prabhakar Ragde
TST 101806759 / 6619:00 - 20:50 Th

Fall 2013 [1139]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 00183161 / 1

Winter 2013 [1131]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001534756 / 6510:30 - 11:20 M,W,FMC 4045Bradley Michael Lushman
LEC 00282761 / 1

Winter 2012 [1121]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001513074 / 6010:30 - 11:20 M,W,FMC 1056Prabhakar Ragde
LEC 00281861 / 1

Winter 2011 [1111]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001508740 / 4510:30 - 11:20 M,W,FMC 4060Alejandro Lopez-Ortiz

Winter 2010 [1101]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001505551 / 6009:30 - 10:20 M,W,FMC 2054Prabhakar Ragde

Winter 2009 [1091]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001428527 / 5511:30 - 12:50 T,ThMC 4040David Toman

Winter 2008 [1081]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001345038 / 5509:30 - 10:20 M,W,FMC 4040Bradley Michael Lushman

Winter 2007 [1071]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001339255 / 5509:30 - 10:20 M,W,FMC 4060Bradley Michael Lushman

Winter 2006 [1061]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001328327 / 5508:30 - 09:50 T,Th,M,C David Toman

Winter 2005 [1051]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001323738 / 4511:30 - 12:50 T,Th,M,C Bradley Michael Lushman

Winter 2004 [1041]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001309340 / 4511:30 - 12:50 T,Th,M,C Bradley Michael Lushman

Winter 2003 [1031]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001370237 / 4511:30 - 12:50 T,Th,M,C Bradley Michael Lushman

Fall 2002 [1029]

SectionClassEnrolledTimeDaysLocationInstructor
LAB 10154191 / 1
LEC 00154181 / 1

Winter 2002 [1021]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 001237024 / 4511:30 - 12:50 T,Th,M,C Anthony Michael Cox

Fall 2001 [1019]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 00150991 / 1

UW Flow Ratings

Liked: 76.74%

76.74%

Easy: 46.53%

46.53%

Useful: 66.22 %

66.22%

CS 442 leads to