ICS 142: Compilers and Interpreters
Winter 2004
Course Reference

Instructor information

Office hours: I will be available in or around my office Mondays 2-4pm, and Tuesdays and Thursdays 1-2pm, during which all course-related issues will have the highest priority. I'm in my office at many other times during the week, and if I'm not working on something urgently, I'll be glad to sit down and talk with you.

Contacting me: I tend to be much easier to reach via email than by phone, so I would suggest using email to contact me under normal circumstances. When you write me an email, please take a few moments to make sure that the following information is placed somewhere in your message: your name, your student ID#, and which course you're enrolled in (as I'm teaching more than one).

Times and places

The lecture meets on Wednesdays and Fridays from 4:00-5:20pm in ELH 100.


The TA and discussion section

The TA is Carmen Badea (carmen@ics.uci.edu). She will be in charge of the discussion sections and will oversee the process of grading (though we will have separate graders who will do the actual grading work). Discussion sections will focus on a combination of lecture- and homework-related material.

Discussion sections will begin meeting Wednesday, January 14. The meeting times and places are:

Section Time and Place
Sec. 1 W 1:00-1:50pm
CS 174
Sec. 2 F 1:00-1:50pm
CS 174

Obtaining additional assistance

You can most easily get course questions answered by coming to lecture and/or discussion and asking them! You can also ask questions by sending email to me and/or the TA; we both read and respond to our email often. Thus, you can usually get a response to your course-related questions within a few hours (sometimes less frequently on weekends and holidays). If the questions require a complex or lengthy response, we may ask you to see one of us in person. As assignments approach their due date, particularly on days when assignments are due, we begin to receive quite a bit of email all at once, so we may not be able to respond to all messages before the assignment is due; if that's the case, we will not send a response if we can't get to it before the assignment is due. We aren't ignoring you on purpose, but unfortunately it's not always possible for the relatively small course staff to answer questions from a large number of students at once.

You are also more than welcome to participate on the ics.142 newsgroup. Those of you who have taken ICS courses in previous quarters will likely be familiar with how to use newsgroups. If you aren't, ask us, and we'll help you get set up. Your participation on the newsgroup is encouraged; I hope that this will become an effective mechanism for discussion throughout the quarter, and that students can help other students. At the very least, read it periodically, as I will be using it to make coursewide announcements from time to time. You are responsible for knowing what goes on there. Please make sure that you read the ground rules that I have posted there, as I will expect that you follow them.

If you don't know what a newsgroup is or how to connect to it, no problem! I've written a document that explains everything you'll need to know to get connected.

Any student who feels he or she may need an accommodation based on the impact of a disability should contact me privately to discuss his or her specific needs. Also, contact the Disability Services Center at (949) 824-7494 as soon as possible to better ensure that such accommodations, such as alternative test-taking environments or note-taking services, are implemented in a timely fashion.


Your course grade will be determined from the weighted combination of your scores on each of eight assignments, one Midterm, and one Final Exam. The weights of each of these are:

Course grades will be determined neither on a normal curve nor a straight scale. It is guaranteed that overall scores over 90% will receive an A- or better, scores over 80% will receive a B- or better, and scores over 70% will receive a C or better. However, the actual cutoffs may be lowered at the end of the quarter. (In short, it is not my intention to fail half of the students, nor am I planning on giving only 2% of the students A's.)

Dropping the course or changing grade option

ICS has instituted a second-week drop policy for all ICS courses. What this means is, regardless of your major, you will not be allowed to drop this course after the end of the second week under any circumstances (except for extreme medical or financial hardship).

Similarly, changing grade option to Pass/NotPass is not permitted after the end of the second week. Regardless of your major, you will not be allowed to change your grade option after this deadline under any circumstances.

I will sign all drop and change cards, so please do not approach your TA with these cards. Your TA is not authorized to sign them!

Academic dishonesty

As ICS 142 students, you are expected to know and follow the academic dishonesty policies of both the ICS Department and the University as a whole. Please take a few minutes to read the policies, which can be found at this link.

All of your lab work is expected to be completed solely by you. Group work and/or sharing of code between students is not permitted. Note that "high-level discussion of course material for better understanding" is permitted and encouraged, but when it comes time to sit down and write code, that is expected to be done by you and you alone. All submissions are compared to one another using an automated plagiarism detection system. This system is extraordinarily good at finding similarities between submissions, even when there are superficial differences. (Note that we also compare your submissions to those submitted during previous quarters whenever one of these assignments was given during a previous quarter, so it is an exceedingly bad idea to turn in, or even refer to, code written by a friend of yours who took the course already.)

Since all of your work is expected to be completed solely by you, you will be held responsible even if you plagiarize only a small portion of someone else's project.

Academic dishonesty is a two-way street. Providing your code to other students for them to turn in as their own is not permitted anymore than turning in someone else's code. Resist the temptation to give code to your friends "for reference." Based on my experience, I can say that your "friends" may very well betray you and turn it in, anyway.

Naturally, the Midterm and Final Exam are also expected to be individual efforts. Dishonest behavior during an exam will not be tolerated.

Violators of academic dishonesty policies are subject to the penalties described in the ICS Department's policy. They are also subject to an immediate course grade of F, and you will not be allowed to drop the course to avoid the grade. Also be aware that a single documented case of academic dishonesty may preclude you from switching into the ICS major, registering for the ICS minor, joining the ICS Honors Program, and graduating from ICS with honors.