Course Search
Courses may be offered in one of the following modalities:
- Traditional in-person courses (0–29 percent of coursework is delivered online, the majority being offered in person.)
- Hybrid/blended courses (30–79 percent of coursework is delivered online.)
- Online courses (100 percent of coursework is delivered online, either synchronously on a designated day and time or asynchronously as a deadline-driven course.)
- Hyflex (Students will be assigned to attend in-person or live streamed sessions as a reduced-size cohort on a rotating basis; live sessions are also recorded, offering students the option to participate synchronously or view asynchronously as needed.)
If you are enrolled in courses delivered in traditional or hybrid modalities, you will be expected to attend face-to-face instruction as scheduled.
CSC 272: Principles Of Programming
Languages
3 credits
Expand on CSC 270 by examining the theory and implementation behind common programming-language constructs. Topics may include scanning and parsing, parameter passing, variable binding, scoping, static and dynamic types, type inference, lazy vs. eager evaluation, tail recursion, concurrency, higher-order functions, implementation of OOP techniques, etc.
Learning Goals
Students will understand the principles of programming language design and implementation as well as understanding the key decisions that must be made when designing a new programming language
*The learning goals displayed here are those for one section of this
course as offered in a recent semester, and are provided for the purpose of
information only. The exact learning goals for each course section in a
specific semester will be stated on the syllabus distributed at the start
of the semester, and may differ in wording and emphasis from those shown
here.
Sections Offered: Spring 2024 |
Principles Of Programming Languages |
0145-272-001 |
S. Li |
|
Tue/Thu |
12:15 pm - 1:30 pm |
GC - SWL 101 |
3 |
|
0145-272-002 |
S. Li |
|
Tue/Thu |
3:05 pm - 4:20 pm |
GC - SWL 100 |
3 |
|