COMPSCI 252R: Advanced Topics in Programming Languages

Instructor: Stephen Chong
Location: Click the "Zoom" link in the Navigation bar (make sure you are logged in and enrolled in this course).
Office hours: Thursdays, 11:45am-12:30pm (i.e., immediately after class)

The topic of CS252 changes each semester. This semester (Spring 2021) we will collectively and collaboratively learning about a variety of advanced topics.

For each topic, we will have have a series of tutorials/lectures on the topic, culminating in the reading and discussion of a recent or significant research paper related to the topic. Students will be responsible for developing and delivering the tutorials/lectures for a topic, working in advance with the instructor to understand the material and develop the tutorial/lecture to present to the class.

For those taking the course for credit, evaluation will be based on class participation, and a final project (either paper reviews or a mini-research project). Auditors are welcome, but must participate in discussion.

Recommended Prerequisites

The course is intended for graduate students at all levels as well as advanced undergraduates. It is expected that students have taken a course in the foundations of programming languages, such as CS 152 . If you are interested in this course but haven't taken a suitable course, please talk with the instructor. 

Time and Place

Tuesdays and Thursdays, 10:30am-11:45am, on Zoom

Since this is a small seminar course with a lot of discussion, synchronous attendance is required. Here are our expectations for our online class meetings.

  • Participate from a quiet space (e.g., your room) where can you listen and speak. If you participate from a more public space (e.g., a classroom, conference room, dining hall, or the like), just be sure you won't be approached or disturbed by others while there.
  • I encourage you to participate with your camera turned on, using horizontal (not vertical) video.
  • If possible, use a good microphone. This will help to reduce noise and feedback in the classroom. You may need to mute your microphone to prevent too much noise/feedback, but this is not ideal, as needing to remember to unmute before speaking can reduce easy interaction.
  • Please use "Gallery View" in Zoom, so that you can see everyone in the class.

Topics and Schedule

See the Topics page and Schedule page.


Grades will be based on the following.

  • Participation in tutorials, and both synchronous and asynchronous discussions.
  • Preparation and presentation of tutorials/lectures.
  • Final project (due May 15) , either
    • Conference-style reviews of 3+ papers related to one or more topics covered in the course
    • Mini-research project

There will not be a mid-term or final exams.

Required Equipment

Due to remote teaching, students in this course must have a tablet and stylus. This is a requirement because it is difficult to type the mathematical notation needed to concisely communicate about the content of this course. If you do not have the required equipment, you should submit a request to borrow the equipment via HUIT's Loaner Equipment Request Form.

Diversity and Inclusion

I would like to create a learning environment that supports a diversity of thoughts, perspectives and experiences, and honors your identities (including race, gender, class, sexuality, religion, ability, etc.) To help accomplish this:

  • If you have a name and/or set of pronouns that differ from those that appear in your official Harvard records, please let me know!
  • If you feel like your performance in the class is being impacted by your experiences outside of class, please don't hesitate to come and talk with me. I want to be a resource for you. If you prefer to speak with someone outside of the course, members of the SEAS Committee on Diversity, Inclusion, and Belonging are excellent resources.
  • I (like many people) am still in the process of learning about diverse perspectives and identities. If something was said (by anyone) in class, office hours, off-line discussion, or any other aspect of this course that made you feel uncomfortable, please talk to me about it.
  • As a participant in course discussions, office hours, and group projects, you should also strive to honor the diversity of your classmates.

If you ever are struggling and just need someone to talk to, feel free to stop by office hours, or to reach out to me and we can arrange a private meeting.

Inclusive Learning and Accessibility

Your success in this class is important to me. We will all need accommodations because we all learn differently. If there are aspects of this course that prevent you from learning or exclude you, please let me know as soon as possible. Together we'll develop strategies to meet both your needs and the requirements of the course.

I encourage you to visit the Accessible Education Office to determine how you could improve your learning as well. If you need official accommodations, you have a right to have these met. There are also a range of resources on campus. The Academic Resource Center provides many resources, including academic counseling and peer tutors.

Mental Health

If you experience significant stress or worry, changes in mood, or problems eating or sleeping this semester, whether because of CS252 or other courses or factors, please do not hesitate to reach out immediately, at any hour, to any of the course staff to discuss. Everyone can benefit from support during challenging times. Not only are we happy to listen and make accommodations with deadlines as needed, we can also refer you to additional support structures on campus, including, but not limited to:

Financial Aid

We do not require that students purchase any books, hardware, or software. While not required, having one's own laptop is helpful. Students without their own laptops are encouraged to reach out at the start of the course to discuss possibilities.

Academic Integrity Policy

See the Academic Integrity Policy page.

CC Attribution Non-Commercial This course content is offered under a CC Attribution Non-Commercial license. Content in this course can be considered under this license unless otherwise noted.