Programming Languages


The following are some of the resources available to students of this course. If you feel at any point that you need additional assistance, please let us know!


The instructor for this course is Zachary Palmer. My office hours are as follows:

Monday 11:30am - 1:00pm
Thursday 10:00am - 11:30am
Friday 2:00pm - 3:30pm

You can also contact me via e-mail (zachary --dot-- palmer --at-- swarthmore --dot-- edu) to make an appointment or just ask a question. You’re also welcome to drop by anytime my door is open; I’ll help if I’m around and available. My office is Science Center 270.


Our course has a Slack workspace where you can ask questions and discuss the course material with each other. Course announcements will be posted here as well. While lecture will be conducted locally this semester, you can use the Slack workspace to talk to your instructor, coordinate with classmates, and receive out-of-band course announcements (such as assignment clarifications or policy updates).

The Slack workspace contains the following channels:

The workspace includes a bot which will post anonymously on your behalf. You may type /anonymous followed by a message in any channel. If you do so, the bot will post your message for you to keep your identity hidden. This feature is included to help promote a comfortable and safe dialogue in our classroom. Please use it respectfully.


The textbook for this course is Principles of Programming Languages by Scott F. Smith. The book is free and is released under the Creative Commons Attribution-Share Alike 3.0 United States License.

The book Real World OCaml is also freely available. It contains a wealth of information about the OCaml programming language (although we likely will not use material beyond the first few chapters).


There are a number of guides linked throughout the site. This is a comprehensive list of them.

Computer Lab

You can use your student ID card to gain access to the computer labs during the nights and on weekends. Just wave your ID over the card reader next to the lab doors. When the green light turns on, just push the door to get in (the knob will not turn). If you have problems getting in, visit Bridget in the department office or send her an e-mail (local-staff --at-- to have your number added to the system. If the building is locked, you can use your ID to enter the door between Martin and Cornell library. For this class, you will have access to Science Center 238, 240, and 256 as well as Clothier 016.

Academic Accommodations

If you believe you need accommodations for a disability or a chronic medical condition, please contact Student Disability Services via email at to arrange an appointment to discuss your needs. As appropriate, the office will issue students with documented disabilities or medical conditions a formal Accommodations Letter. Since accommodations require early planning and are not retroactive, please contact Student Disability Services as soon as possible. For details about the accommodations process, visit the Student Disability Service Website. You are also welcome to contact your instructor privately to discuss your academic needs. However, all disability-related accommodations must be arranged, in advance, through Student Disability Services.