22C111 Course Syllabus Spring 2008
Programming Language Concepts
Monday-Wednesday-Friday 9:30-10:30 room 2229 Seamans Center
Professor: Ted Herman, 201M MacLean, Telephone: 335-2833, email: ted-herman AT uiowa.edu (replace AT by "@" and remove spaces)
Teaching Assistant: Chris Dibbern, B20J MacLean, 2:30-5:00 on Mondays and Wednesdays, chrisdibbern AT gmail.com (replace AT by "@" and remove spaces)
E-mail: herman at cs.uiowa.edu Office Hours: 11:30-12:00 every day
Prerequisite: grades of C- or higher in 22C:019, 22C:021, and 22C:022
- Goals and objectives of the course. This course examines advanced topics in programming languages, for example, syntax specification and informal semantic models; program control structures, including recursion, co-routines, backtracking, and concurrency; and data abstraction and structuring methods. The course introduces programming paradigms, such as functional and logic programming, that contrast with more conventional languages. Examples and assignments may rely on several languages such as Java or Python, with Prolog for the logic programming part and Haskell or Erlang for the functional programming part.
- Grading procedures, including whether plus/minus grading will be used. Plus/minus grading will be used based on normalizing total student scores to a curve. There are four examinations. Examination scores contribute %70 of the final grade. There will be at least four homework assignments, and homework scores contribute 30% of the final grade. Above, it is noted that students can expect to spend about six hours per week outside of class on this course.
- Instructor's or departmental policies on attendance and tardiness, assignments, and examinations. Students are expected to attend classes. No late homeworks are accepted if solutions have been posted to the course web site. There is no guarantee that late homeworks will be accepted; if the Professor or TA agree to accept a late homework, the score will be penalized: homeworks submitted late, but before the TA has graded all the on-time homework, will be penalized by 20%; homeworks submitted after the TA has finished grading all the on-time homeworks, but within a week of the deadline, will be penalized 50%.
Dates and times of any exams scheduled outside of class time and the date and time of the final examination. According to the University's Final Examination Schedule, the final examination will be at 2:15 p.m. on Tuesday, 13 May 2008.
Resources for obtaining additional help, such as tutors, teaching assistants, or tutorial laboratories (if any). Most of the additional resources are online or in libraries. They will be announced on the course web page. You are expected to have an account on the department's Linux cluster (an account will be given to you if you do not already have an account). Homework assignments for some programming languages are expected to work properly on the department's cluster (thus, it is not enough that programs work on your own computer). Homework submission and grade posting will use the ICON system.
Miscellaneous Announcements: The University of Iowa Policies.
This course is given by the College of Liberal Arts and Sciences (CLAS). This means that class policies on matters such as requirements, grading, and sanctions for academic dishonesty are governed by the College of Liberal Arts and Sciences. Students wishing to add or drop this course after the official deadline must receive the approval of the Dean of the College of Liberal Arts and Sciences. Details of the University policy of cross enrollments may be found at: http://www.uiowa.edu/~provost/deos/crossenroll.doc.
See the student academic handbook for administrative procedures, your rights and responsibilities, and other topics. The official classroom procedures for faculty includes policies on cheating and plagiarism, students with disabilities, and other topics. In particular, we are required to state the following: I would like to hear from anyone who has a disability which may require seating modifications or testing accommodations or accommodations of other class requirements, so that appropriate arrangements may be made. Please contact me during my office hours.
Also, we are required to specify the following information. The name of the department, location of the departmental office, and information on how to contact the DEO or his/her designee: Department of Computer Science, 14 MacLean Hall, Professor James Cremer, DEO
- "Statement that, for each semester hour credit in the course, students should expect to spend two hours per week preparing for class sessions (e.g., in a three-credit-hour course, standard out-of-class preparation is six hours)."
- "Procedures for student complaints." There is rather specific language (legalese) describing the escalating hierarchy of complaint procedures in several University documents. Typically, the student tries to resolve the matter with the instructor; then it can go to the department chairman or higher levels of authority. Please see the official documents for all the details of grievances and appeals.
- The collegiate policy on plagiarism and cheating Plagiarism and cheating are not tolerated. In the past, I've gone so far as making multiple versions of quizzes and examinations to discourage cheating (which had the unfortunate side-effect of being "unfair" because not all examinations were identical). Generally, students caught cheating for the first time may be given a penalty up to an automatic F in the course. Such an F cannot be removed from the transcript. Penalties up to expulsion may apply to second offences. While you are encouraged to discuss homework problems with others in the class (this is a good way to learn), do not copy solutions!
- Schedule of topics, readings, and course materials or other description of course content. See above, and frequently consult the course web page for assigned readings, pointers to online documents, and other announcements.
- Corrections or changes (if any) in the information about the course printed in the Schedule of Courses or other official University publications. Corrections, updates and announcements will be posted on the course web page version of this syllabus.
The College of Liberal Arts and Sciences: Policies and Procedures
Administrative Home of the Course
The College of Liberal Arts and Sciences is the administrative home of this course and governs such academic matters as the add/drop deadlines, the second-grade-only option, issues concerning academic fraud or academic probation, and how credits are applied for various graduation requirements. Different colleges may have different policies. Students with questions about these or other CLAS policies should speak with an academic advisor or with the staff in 120 Schaeffer Hall. Also see the CLAS Academic Handbook: http://www.clas.uiowa.edu/students/academic_handbook/index.shtml
Plagiarism and any other activities that result in a student presenting work that is not his or her own are academic fraud. Academic fraud is reported to the departmental DEO and then to the Associate Dean for Academic Programs and Services in the College of Liberal Arts and Sciences who deals with academic fraud according to these guidelines: http://www.clas.uiowa.edu/students/academic_handbook/ix.shtml
Making a Suggestion or a Complaint
Students have the right to make suggestions or complaints and should first visit with the instructor, then with the course supervisor if appropriate, and next with the departmental DEO. All complaints must be made within six months of the incident. http://www.clas.uiowa.edu/students/academic_handbook/ix.shtml#5
Accommodations for Disabilities
A student seeking academic accommodations should first register with Student Disability Services and then meet with a SDS counselor who determines eligibility for services. A student approved for accommodations should meet privately with the course instructor to arrange particular accommodations. See http://www.uiowa.edu/~sds/
Understanding Sexual Harassment
Sexual harassment subverts the mission of the University and threatens the well-being of students, faculty, and staff. See http://www.sexualharassment.uiowa.edu/
Reacting Safely to Severe Weather
If severe weather is indicated by the UI outdoor warning system, class members will seek shelter in the innermost part of the building, if possible at the lowest level, staying clear of windows and of free-standing expanses which might prove unstable. The class will resume after the severe weather has ended. See the Operations Manual section 16.14. i.
Writing Center 110 English-Philosophy Building, 335-0188, http://www.uiowa.edu/~writingc
Speaking Center 12 English-Philosophy Building, 335-0205, http://www.uiowa.edu/~rhetoric/centers/speaking
Tutor Referral Service Campus Information Center, Iowa Memorial Union, 335-3055, http://www.imu.uiowa.edu/cic/tutor_referral_service
Student Classroom Behavior:
The ability to learn is lessened when students engage in inappropriate classroom behavior, distracting others; such behaviors are a violation of the Code of Student Life. When disruptive activity occurs, a University instructor has the authority to determine classroom seating patterns and to request that a student exit immediately for the remainder of the period. One-day suspensions are reported to appropriate departmental, collegiate, and Student Services personnel (Office of the Vice President for Student Services and Dean of Students).
University Examination Policies:
Missed exam policy. University policy requires that students be permitted to make up examinations missed because of illness, mandatory religious obligations, certain University activities, or unavoidable circumstances. Excused absence forms are available at the Registrar web site: http://www.registrar.uiowa.edu/forms/absence.pdf
An undergraduate student who has two final examinations scheduled for the same period or more than three examinations scheduled for the same day may file a request for a change of schedule before the published deadline at the Registrar's Service Center, 17 Calvin Hall, 8-4:30 M-F, (384-4300).