Important announcements related to the course will be posted here. Please check this page daily.
- May 20 - Project 5 scores and final letter grades are now
visible on the grades server. A grade of J indicates you have been
referred to the Student Honor Board for judicial review of suspected
academic dishonesty. The Student Honor Council will contact you
- May 17 - Dr. Hicks will hold office hours on Tuesday, May
18, 9:30-11, and Wednesday, May 19, 11-noon, for those who want to
stop by to see their exam.
- May 16 - Final exam scores are now posted on the grades server.
- May 10 - Sample final exams & solutions posted on class
web page here. Solutions also
posted for midterms 1 & 2.
- May 3 - The project 5 deadline has been pushed to Monday,
May 10 (at 11:59:59pm). There will be no project 6.
- May 2 - Prof. Tseng's office hours canceled this week and next
due to travel, but he'll still be able to answer questions via
email and 330 Forum posts.
- Apr 30 - Course evaluations can now be filled out, until May 12.
- Apr 30 - Fixed submit.rb
for project 5, and added some clarifications to the
- Apr 30 - A couple more changes to project 5.
Updated Simulation.java to add call to Collections.sort(lines)
in displayState(). Modified submit.rb to only submit Java
files in the metro subdirectory. Updated CALFUZZER-README
to deal with packages.
- Apr 29 - Updated p5.zip to
add call to initSimulation() to Simulation.java. Please
update your project.
- Apr 29 - Submit server is now accepting submissions
for project 5. Some minor code changes are necessary, see the
project description for details.
p5.zip has been updated so that
it can be imported into Eclipse as a project. Public tests
have been implemented as JUnit tests. Due to the delay in
activating the submit server, the number of release tokens has
been increased to 5/day.
- Apr 28 - Quiz 3
will take place this Friday in discussion. It will
cover lambda calculus and multithreading. Practice
- Apr 27 - Ramaswamy's office hours for today have been
canceled, due to illness. She will help Khoa next Thursday during
his office hours, since there are often many students looking for
- Apr 25 - Small edits made to the project 5 description, to
add some clarifications and remove some stale bits.
- Apr 23 - Project 5 description posted here. Submit
server will be set up this weekend.
- Apr 22 - Midterm 2 scores are visible on the grades server.
TAs will hand back exams Friday in discussion.
- Apr 20 - Posted Quiz 2 and solution
- Apr 20 - Midterm 2
will be tomorrow, Wed, Apr 21. It will cover OCaml, CFGs, parsing, and
operational semantics. It will not cover lambda calculus or multithreading.
Study materials are available here.
- Apr 20 - Posted practice
for operational semantics.
- Apr 19 - Proj 4 scores have been posted.
- Apr 18 - Prof. Hicks will be gone M-W, so Mark Daly will be
covering his office hours (TW 10-11am) in the TA room.
- Apr 14 - Prof. Tseng's office hours changed
to 4:45-5:30pm this Wed & next week to accomodate giving
Prof. Hick's 2pm lectures.
- Apr 8 - The midterm has been pushed back one week, to April
- Apr 8 - The project 4 deadline has been extended by two
days, until April 14 (rather than April 12).
- Apr 7 - Final exam has been scheduled for Thursday, 5/13, 4-6pm,
in PHY 1412.
- Apr 5 - Project 3 scores posted.
Quiz 2 examples posted here.
- Apr 1 - Project 3 scores have been delayed to give students
who used disallowed library functions (e.g., List.length, List.sort,
List.hd) a chance to resubmit their project by Friday.
- Mar 29 - Quiz 2
has been pushed back 1 week (to April 9) to
avoid conflict with Passover and Good Friday. Project 4 has been pushed
back 3 days (to April 12) to avoid conflict with the rescheduled Quiz 2.
- Mar 26 - Project 4 is now set up on the submit server.
Download a new copy of p4.zip, some public
tests & outputs have been changed.
- Mar 26 - Project 4 is now available online here.
You can start working on the Scheme programming and interpreter.
We will discuss parsing next Monday.
- Mar 24 - Hicks Friday office hours canceled (Mar. 26).
Will hold office hours today (Mar. 24) 3:30-5:30pm.
- Mar 12 - Midterm 1 scores have been posted on the
- Mar 8 - Project 2 scores have been posted on the
- Mar 4 - Project grading policy on submit server
is "release-test aware", so you'll get the highest score
from one of the following 4 submissions:
- Last on-time compilable submission
- Last on-time compilable release-tested submission
- Last late compilable on-time submission (-10%)
- Last late compilable on-time release-tested submission (-10%)
- Mar 4 - Project 3 has been posted here.
It will be due Thu, Mar 25th.
- Mar 4 - Midterm 1 will
be given during lecture Wednesay, March 10th. It will cover
programming languages, Ruby, regular expressions, and finite
automata. It will not cover OCaml.
- Mar 4 - Srividya will provide extra office hours today from 4:30-5:30pm.
- Mar 3 - Quiz 1 scores are now available on the grades server.
- Mar 3 - Due to extenuating circumstances involving several
students, the project 2 late penalty has been dropped to 5% (rather
than 10%). The due date for the project is the same.
- Feb 25 - Srividya's office hours changed from 11-noon to
- Feb 23 - Project 1 scores have been posted on the
- Feb 23 - Quiz 1 will
be given during discussion Friday, Feb 26th,
and will cover Ruby, regular expressions, and finite automata. Practice
problems and example quizzes (and their solutions) are available
- Feb 23 - Tseng office hours changed from 2-3pm to 2:30-3:30pm.
Office hours canceled Wed, Feb 24 (will be covering Hicks 2pm lecture).
- Feb 21 - Office hours rescheduled this week due to travel
- Hicks office hours on Tuesday (normally 10-11am) moved to
2-3pm, and Friday office hours (normally 10-11am) shifted to
Monday from 1-2pm.
- Dogruel (TA) office hours on Monday (12-2pm) moved to Thursday
- Feb 16 - Mini-job fair for CS students. Several
companies (Google, Amazon, Microsoft, Booz
Allen Hamilton, DOJ, Macedon Consulting and Accenture) will
be on campus making presentations and meeting students on
Thu, Feb 18 in CSIC from 5:30pm-8:00pm.
- Feb 16 - Project 2 posted online here
for students wishing an early start.
- Feb 15 - Project 1 deadline moved to 11:59pm Friday,
February 19, due to lost office hours. Hicks' office hours will be
moved from Friday at 10am to Thursday at 10am.
- Feb 9 - Lectures and office hours canceled Wed, Feb 10. Project 1 deadline moved to 11:59pm Wed, Feb 17 due to more snow.
- Feb 8 - Project 1 deadline moved to 11:59pm Monday, Feb 15 due to snow.
- Feb 7 - Lectures and office hours canceled Mon, Feb 8 due to snow.
- Feb 5 - Lectures and office hours canceled today, due to coming snow.
- Jan 31 - Project 1 posted online here.
It will be due midnight, Friday, Feb 12. Submit server is ready
for submissions. You may use release tokens before passing all
- Jan 26 - Get your Linuxlab accounts from the grades server.
- Jan 21 - All Friday discussion sections will be held in CSIC 2120
(location of 1pm & 2pm sections have been changed to match earlier sections).
(also available by appointment)
|Prof. Mike Hicks
|Prof. Chau-Wen Tseng
||Will meet in TA room
||Tue 11:30-12:15pm & 3:30-6pm, Thu 11:30-12:15pm, Fri 1-2pm
||Will meet in TA room
||MW noon-2pm, Fri 3-4pm
||Will meet in TA room
||Mon 4:30-6pm, Thu 11:45-1:15pm & 4-6pm
||A study of programming languages, including their
syntax, semantics, and implementation. Several
different models of languages are discussed,
including procedural (Ruby), functional (OCaml),
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.
|| Monday and Wednesday 2:00-3:15pm (0101, 0102, 0103) and 3:30-4:45pm (0201, 0202, 0203)
|| Friday 9am, 10am, 11am, noon, 1pm, 2pm
||There are no required or recommended texts.
See the resources page
for useful online links.