CS 3411C - SPRING 1999

CS 3411C - Programming Language Concepts

Spring Quarter 1999

(or "Hey, it's starting to look like a REAL class!")


Leap directly to the Tentative Course Schedule

Instructor: Kurt Eiselt
Office: College of Computing 112
Electronic Mail: eiselt@cc.gatech.edu
Phone: 894-8386
Office Hours: Anytime my office door is open

Teaching Assistant: Vernard Martin
Electronic Mail: vernard@cc.gatech.edu
Office Hours: TBA

Teaching Assistant: Chris Bradfield
Electronic Mail: ceejaybe@cc.gatech.edu
Office Hours: MW 3:30-4:30pm in the picnic area

Teaching Assistant: Joe Lafiosca
Electronic Mail: fnord@cc.gatech.edu
Office Hours: MWF noon-1pm and TTh 2:00-4:30pm in the picnic area

Newsgroup: git.cc.class.3411c

Website: http://www.cc.gatech.edu/computing/classes/cs3411c_99_spring/index.html

Course Description: CS 3411 is a study of the history, conceptual basis, and fundamental constructs of high-level programming languages and models.

Prerequisites: Everyone in this course should have successfully completed CS 2390 and 2430, and it would be nice if you've had CS 2360 also, but it's not required.

Required Texts: Concepts of Programming Languages, fourth edition, by Robert W. Sebesta (Addison-Wesley, 1999).

Recommended Texts: any recent manual for the programming languages you'll be using in this course, which includes C++ and either LISP or Perl (but we haven't yet decided which of those latter two we'll be using).

Other Resources: You might want to check out the web pages for the other two sections of 3411 being offered this quarter: section A taught by Brian McNamara and section B taught by Phil Hutto.

Newsgroup: We will make use of the local newsgroup git.cc.class.3411c for broadcasting announcements, revisions, scores, and other information pertinent to the course. Read it often. You may also use the newsgroup to make comments and suggestions, or ask questions of your classmates, TA, instructor, or anyone else who may be reading the newsgroup. The class notes and the homework assignments can be found by following the appropriate links from this Web page (as indicated in the course schedule below).

Course Requirements and Grading: The requirement and grade breakdown aren't quite solidified yet. Stay tuned.

(Occasionally we encounter students who are at a disadvantage in exams because of a reading or other disability. If you have been diagnosed as having such a disability, please see me so that we can arrange for a more appropriate method of evaluation for you.)

Any code that you submit for grading must be free of syntax errors. That is, even though the logic might be wrong, the code must be compilable on our compilers without generating unrecoverable errors. The teaching assistants will not grade any code that blows up while being loaded, before they get a chance to run it.

Late Assignments: Assignments are due no later than the day and time specified in the assignment posting, which you'll find on the newsgroup for this course, as well as here on the Web. There will be no credit for late assignments.

Computing: I'll cross this bridge when we get there.

Academic Misconduct: Because you are being graded relative to other students in this course and not on an arbitrary, predetermined scale, any student's attempt to increase his or her grade through dishonest means could unfairly decrease the grades of other honest students. The homework assignments in this course are not intended to be collaborative exercises, but on the other hand we don't want to discourage discussion between students about ideas pertaining to this course. So, if you incorporate ideas into your homework assignments that did not originate with you, or did not come from the obvious sources--your instructor, teaching assistant, textbooks, lectures, or supplementary reading materials provided in this course--you must give credit to your sources. Furthermore, at no time is it acceptable for you to share your solutions to the homework assignments with other students, whether these solutions are complete or partial. You are not to work on these assignments in groups, whether on paper or at the computer. Students who fail to follow these rules will be charged with academic misconduct, which carries severe penalties. Of course, there is to be no collaboration whatsoever during exams. If you haven't already done so, you should take the time to become familiar with Georgia Tech's definition of academic misconduct and the policies and procedures pertaining to academic misconduct. This information can be found in the 1997-99 general catalog on pages 364-371.

Tentative Course Schedule: