Calvin seal CS 382: Special Topics - Compilers
Fall 2004

Syllabus

Personnel

Instructor: Jeremy Frens
office: North Hall 296
phone: x6-8666
email: jdfrens@calvin.edu
office hours: see this schedule

Texts


Grading

You need to turn in two things by the last day of final exams.

  1. Working Compiler. The typechecker must be able to typecheck the two example programs. (See the wiki.) The code generator must be able to handle the following language features: integers, operators (logical, boolean, arithmetic, etc.), if statements, local variables, and functions. Other language features may be added to list.
  2. Report. Write a five page report about your compiler. Describe the features of your compiler, including any algorithms or class designs that you are particularly proud of. Describe the shortcomings of your compiler. Consider someone like Joel Adams or myself to be your audience---knowledge of compilers, assembly code, basic language features (i.e., everything that Hobbes has), lexer and parser generators; do not spend your time explaining these concepts. Use a template provided by the ACM for a conference paper; you should organize your paper the same way (organized in sections, starting with an abstract, followed by an introduction section, ending with a conclusion section and a bibliography, etc.). You're doing this right if you're very upset with me that the paper is only five pages long; you'll be marked down if it's not exactly five pages.

Attendance

I'm trying this semester to run the course as a problem solving course. This means that participation counts for a lot of your grade; consequently, attendance is pretty much required.

Work Policies & Honesty

This is tricky, and we'll talk about it.


Standard Clauses

Disabilities

Calvin College will make reasonable academic accommodations for persons with disabilities. Students should notify Student Academic Services if they have a documented disability. Students with disabilities should meet with their instructors during the first two weeks of class to discuss academic accommodations.

Incompletes

An incomplete grade (I) is given only in unusual circumstances, and only if those circumstances have been confirmed by the Student Life office. Procrastination does not qualify as an unusual circumstance.

Responsible Use of Technology

You are expected to abide by the guidelines expressed in the policies given in Calvin's Technology Policy Documents (including the "Responsible Use of Technology at Calvin College", found on that page).

Offensive material (i.e., pornography) is not filtered in the lab; however, all Web accesses are logged. These logs are checked monthly, and violators are turned in to Student Life.