Available from January 24, 2022 until August 31, 2022

Course: CSE2120 Edition: 2021-2022

One can enroll until Thu, Jun 23, 2022 23:59:00
About the Course

The design of a programming language is the result of a selection from a general collection of programming language concepts. With some frequency, new languages are introduced that combine concepts in an novel manner and sometimes introduce new concepts. During his/her career, a computer scientist will have to work with more than one generation of programming languages. In order to learn new programming languages, a computer scientist should understand the basic principles in the design of programming languages.

Latest Announcements

Let-Seq additional spec-test

For the Substitution and LetSeq assignment, we have added an additional spec test for let-seq, lambda, and function application.

at Fri, May 20, 2022 15:21:50

Minor changes to descriptions

For the Suspending Interpreter assignment there were mentions of “thunks” in the description. Those should have been “suspensions”, and have been changed.

For the Type Checking and Subtyping, there was no description of the functions subtype and subtypeOf. Those have been added to the description of the question in part 2.

at Fri, May 20, 2022 14:32:50

Mutable Objects Helpers

For the mutable objects assignment, the listed helper methods are already implemented in the hidden library and can be used directly. You should not implement them yourself. We have clarified this in the text of the assignment.

at Tue, Apr 12, 2022 10:48:38

View all announcements