CS 331 Spring 2020  >  Syllabus


CS 331 Spring 2020
Syllabus

COURSE:   CS 331 Programming Languages. 3 credits.
  Time & place:   2:15–3:15 pm MWF, 535 Duckering.
  Prerequisites:   CS 311.
INSTRUCTOR:   Glenn G. Chappell, Dept. of Computer Science.
  Office:   539 Duckering.
  Office hours:   1–2 pm MWF, 3:30–4:30 pm MW, 4–5 pm Th on spring 2020 class days,
or by appointment.
  Office phone:   [474-]5736. E-mail is preferred to phone calls.
  E-mail:   ggchappell@alaska.edu
  Paper mailbox:   Inside the Computer Science Department office, 527 Duckering.
TEXT:   There is no required text.
Readings will be provided by the instructor.
WEB PAGE:   http://www.cs.uaf.edu/~chappell/class/2020_spr/cs331
UA Blackboard Learn will be used for homework submission and online quizzes.

Course Topics & Goals

CS 331 is a survey of the field of computer programming languages. We will look at how programming languages are specified and how such specifications are used. We will examine programming language features, comparing and contrasting their appearance in various programming languages. We will take a close look at some programming languages that differ significantly from those covered in most CS courses.

After taking this class, students should:

Important Dates

Also see the Semester Plan, on the class webpage.

Mon, Jan 20   No class (AK Civil Rights Day)
Wed, Mar 4   In-class Midterm Exam
Mon, Mar 9–Fri, Mar 13   No class (Spring Break)
Fri, Mar 27   Last day to withdraw (“W” on transcript)
Mon, Apr 27   Last regular class meeting
Thu, April 30   Final Exam 1–3 pm in the classroom

Procedures

Class meetings—Lecture-discussion format.

Quizzes—Online quizzes will be taken on the UA Blackboard Learn site. These will be announced on the class webpage at least 48 hours in advance. No make-up quizzes will be given.

Homework—Homework will be assigned every week or two, and will consist of both programming and answering questions. Homework turned in late will generally be penalized. Homework submitted more than two weeks after the assignment due date will not be graded, unless prior arrangements have been made with the instructor.

To do the homework, students must obtain access to recent versions of the following programming languages: Lua (version 5.1 or later), Haskell (get The Haskell Platform), Forth (GNU version: Gforth), Scheme (get DrRacket), and Prolog (GNU version: gprolog). All of these are available in the Duckering 536 lab.

Exams—Two exams will be given: a Midterm and a comprehensive Final. See Important Dates.

Grades

Course grades will be based on points earned, using a 90-80-70-60 scale. The +/− grading system will not be used. Point totals will be as follows.

Assignments (total)   580 pts*
Quizzes (total)   70 pts*
Midterm Exam   150 pts*
Final Exam   200 pts*
TOTAL   1000 pts*

*At the end of the semester, the total points possible on quizzes may differ from this. Quiz scores will be scaled accordingly, so that the total is as stated above.

Policies

Students are expected to be at every class meeting on time, and are responsible for all class content, whether present or not. If absence is necessary, work (other than quizzes) may be made up only if the instructor is notified as soon as possible; in particular, absences due to scheduled events must be arranged ahead of time.

Students who fail to attend the first class meeting after registering for the class, or who miss four consecutive class meetings, may be dropped/withdrawn without warning, unless prior arrangements are made with the instructor.

Academic dishonesty will not be tolerated, and will be dealt with according to UA procedures.

Students pay the CS lab fee. Payment allows access to the CS labs.

UAF academic policies: http://catalog.uaf.edu/academics-regulations
CS Department policies: http://www.cs.uaf.edu/departmental-policies