CMSC 330, Summer 2017

Organization of Programming Languages


Class announcements will be posted via Piazza; please check the course Piazza page daily. You may sign up for the class on Piazza here.


Name Office E-mail Office Hours
Anwar Mamat AVW 3259

W: 1:30-2:30pm

BT TA Room 1120, AV. Williams Building

Tu: 12:30-4:30pm

Daniel  Portin W: 1:00-4:00pm
Th: 1:00-4:00pm
F: 1:00-3:00pm
Joseph Bergman M: 12:30-2:30pm
Th: 12:30-2:30pm

Please think twice before you e-mail the course staff: Most queries should go to Piazza, as their answers will be relevant to more than just the e-mailer. If your query really is just about you, include CMSC330 in the subject of your email.


Course Description A study of programming languages, including their syntax, semantics, and implementation. Several different models of languages are discussed, including procedural (Ruby), functional (OCaml), logical (Prolog) and object-oriented (Java). Language features such as formal syntax, scoping and binding of variables, higher-order programming, typing and type polymorphism, and object inheritance are explored.

There are no required or recommended texts. See the resources page for useful online links. We will be using personal response devices, Clickers. Purchase one of the following clickers at the book store
QT2 978-0-9972248-3-2
QT 978-1-934931-75-2
NXT 978-1-934931-77-6
RF LCD 978-1-934931-78-3

Lecture Times & Locations
M/W/F 11:00am - 12:20pm CSI 1115
Final exam
07/21/2017 11:00am
Discussion Times & Locations
Tu/Th 11:12:20 CSI 1115