General Information

time to wake up

Instructor Amal Ahmed

TA Max New [ WVH308, maxnew at ccs.neu.edu]

Time and Place Tuesdays and Fridays, 3:25pm to 5:05pm, in Ryder 233.

Office Hours Amal on Mondays 11am to noon. Max on Thursdays 11am to noon.

Prerequisites The course assumes that you know how to design (recursive) programs systematically and that you have encountered inductive proofs in your undergraduate education. At Northeastern, most of the relevant material is covered in the freshman courses on (1) programming and computing and (2) logic in computing. If you have doubts, consider reading How to Design Programs. For PhD students, "to read" means to read and solve the exercises and if you can’t solve them, read the section.

Problem Sets There will be 6 or 7 assignments during the semester that will serve to reinforce the technical material. Some problems will ask you to solve paper and pencil problems; for others you will use the PLT Redex modeling environment, which comes with the Racket programming language. In addition, some problem sets include writing assignments, because half a PhD student’s work is to articulate ideas in writing.

Mini-Project In order to integrate what you have learned during the semester, you will work on a mini-project during the second half of the semester. I will propose topics for the mini-project after a couple of weeks. If you intend to get your PhD in programming languages, you are welcome to propose your own project; collect project ideas during the first few weeks as you get to know how the course works.

You will present the results of your Mini-Project during presentations scheduled during the last week of the semester. Your presentation should be an extension of your memo with your results translated into an oral format. You have 40 minutes for your presentation, 20 minutes per student. You will answer questions for around 10 minutes. This is similar to the common conference presentation constraint.

Work You will work in pairs for the weekly assignments and the mini-project. The pairings will change over the course of the semester. For the mini-project you may choose your own partner, enrollment permitting.

PhD research isn’t about individual work only; you must learn to collaborate with others.

Midterm and Final Exam There will be an in-class midterm exam and a final exam during finals week.

Grades Grades will be based on problem sets, the mini-project, and exams:

problem sets








midterm exam




final exam




Note The syllabus and grading policy are subject to change over the course of the semester.

Academic Integrity Unless explicitly instructed otherwise, all homework is to be solely work done by you and your current partner for that assignment. You are not permitted to draw upon assignments or solutions from similar instances of the course, nor to use course materials (such as assignments or programs) obtained from any web site or other external source in preparing your work. Exams must be solely your own work. CCIS policy mandates that all violations of this policy be reported to OSCCR.