CMSC 330, Spring 2011

Organization of Programming Languages


Important announcements related to the course will be posted here. Please check this page daily.

  • May 15 - Letter grades are now available on the grade server. They will be entered into the campus database on Monday.
  • May 13 - Final exam scores are available on the grade server. If you want to review your final exam, contact your professor. Final course grades will be computed within a few days. Yes, there will be a curve. No, we don't know what the curve will be yet.
  • Final Exam is Thu, May 12, 4-6pm in CHM 1407.
  • May 11 - Final exam PANIC review session. 7:30pm to 9:30pm in CSIC 1115.
  • May 9 - Quiz 4 and sample solutions are posted on the schedule page.
  • May 6 - Here is a list of all the topics in the course, to help you study for the final exam.
  • May 4 - We're holding some extra office hours in the last few days before the final. The regular office hours schedule runs through Mon, May 9; the schedule for May 10-12 is below.
  • May 4 - Sample solutions to practice problems 6 are posted.
  • May 2 - Practice problems 6 are available on the schedule page; solutions will be posted soon.
  • May 1 - The last day to earn the "meet the professor" point is Tuesday, May 10.
  • Apr 26 - There will be a quiz in discussion section on Friday, Apr 29, covering lambda calculus. Also, part 4 of project 5 is now optional (for extra credit).
  • Apr 25 - Project 5 is available.
  • Apr 19 - Practice problem set 5 has been posted.
  • Apr 15 - Here is a histogram of the midterm 2 scores.
  • Apr 14 - Midterm 2 scores are posted on the grades server. Midterms will be returned in discussion section tomorrow.
  • Apr 12 - TONIGHT special midterm panic review session by Asad at 7pm-9pm in CSIC 2117. Thursday hours shortened to 2:30-3:30pm. (And you thought the blink tag was dead.)
  • Apr 11 - Quiz 3 and a sample solution have been posted (see the bottom of the schedule page).
  • Apr 5 - Here is a one-slide overview of the topics on midterm 2.
  • Apr 4 - There will be a quiz in discussion section on Friday, April 8.
  • Apr 1 - Practice problem set 4 has been posted.
  • Mar 30 - Project 4 is avaialble. Some additoinal practice problems have also been posted.
  • Mar 11 - Please submit any regrade requests for midterm 1 by Monday, Mar 14.
  • Mar 11 - There was a bug in the previous public tests for project 3; please be sure to download the latest version.
  • Mar 7 - Project 3 is posted. We've also now posted sample solutions to midterm 1.
  • Mar 4 - Here is a histogram of the midterm 1 scores.
  • Mar 3 - Midterm 1 scores are posted on the grades server. Midterms will be returned in discussion section tomorrow.
  • Mar 1 - Example midterms from previous semesters are posted on the bottom of the schedule web page. (They've been there for a while, but we're posting a reminder since we didn't announce it here before.)
  • Feb 23 - Here is a list of topics on midterm 1.
  • Feb 23 - Asad is moving 1h of office hours from Mar 3 and 1h from Mar 10 to create a Night Before Midterm Panic Session on Tues Mar 1 from 7-9pm. So his office hours on Mar 3 will be from 2:30-3:30 and same for Mar 10.
  • Feb 21 - There will be a quiz in discussion section on Friday, Feb 25.
  • Feb 18 - Another set of practice questions and solutions have been posted (see the bottom of the schedule page).
  • Feb 15 - Some typos in the regexp/finite automata slides have been fixed.
  • Feb 14 - There will be a quiz in discussion section on Friday, Feb 18. Review practice questions 1 to study for the quiz.
  • Feb 11 - Project 2 is now available.
  • Feb 10 - Some sample written questions and solutions are now posted to help you prepare for future quizzes and midterms.
  • Feb 1 - Student accounts should now be active on the submit server, though project 1 is not yet accessible there.
  • Jan 28 - Due to the missed lecture on Wednesday, we have pushed the due date for Project 1 to Fri, Feb 11.
  • Jan 26 - Project 1 is available.
  • Jan 24 - Linuxlab accounts for everyone are now available. You can get your username and password on the grade server.
  • Jan 21 - There will be no office hours the week of Jan 24.
CourseEvalUM is open through Wednesday, May 11. Please fill out an evaluation for this and all your other courses.

Office hours before final

Tue, May 10 Wed, May 11 Thu, May 12
1-2pm Prof. Foster
2-4pm Bryan
4-5pm Jinseong
12:30-5pmProf. Cleaveland
2-3pmProf. Foster
1:30-3:30Asad and Ke
3:30-5:00No office hours


Name Office E-mail Office Hours
(also available by appointment)
Prof. Rance Cleaveland AVW 4111 rance at Mo 3:30-4:30, We 12:30-1:30
Prof. Jeff Foster AVW 4129 jfoster at Mo 12:00-1:00, Tu 1:00-2:00
Jinseong Jeon Will meet in TA room jsjeon at Tu 4:00-5:00, Fr 1:00-3:00
Bryan Robbins Will meet in TA room brobbins at Tu 2:00-4:00
Asad Sayeed Will meet in TA room asayeed at Th 1:30-3:30
Ke Wu Will meet in TA room wuke at Mo 10:30-12:00, Th 3:30-5:00
Office hours by day


Course Description A study of programming languages, including their syntax, semantics, and implementation. Several different models of languages are discussed, including procedural, functional, and object-oriented. Language features such as formal syntax, scoping and binding of variables, higher-order programming, typing and type polymorphism, and object inheritance are explored.
Lecture Location CSI 3117 (0101, 0102, 0103) and 1115 (0201, 0202, 0203)
Lecture Times Monday and Wednesday 2:00-3:15pm (0101, 0102, 0103) and 3:30-4:45pm (0201, 0202, 0203)
Textbooks There are no required or recommended texts. See the resources page for useful online links.

Web Accessibility