 |
CS 341 - Survey of Programming Languages
Course Information |
Course Overview
This course surveys three programming languages: the functional language Scheme,
and the scripting languages Perl and ActiveScript (for Flash Animation). More than a
survey course, however, this course covers fundamental design decisions
at the core of every programming language. The larger first part of the
course will explore such issues in the context of the programming language
Scheme. We will learn the techniques necessary to implement a simple
Scheme interpreter in Scheme itself. The second part of the course will allow students
to master of the basics of two popular and practical scripting languages
(Perl and ActiveScript) while gaining an understanding of these languages in the general context
of programming language design. This course is analogous to linguistics
course teaching the basics of three languages, where the first language
is chosen to challenge the student's assumptions about languages, and the
others are chosen to provide a foundation for future practice and reinforce
general understanding about languages.
Text
Instructor
Todd Neller
Lecture: TTh 8:30-9:45AM, Glatfelter 112
Office: Glatfelter 209
Office
Hours: MWF 10-11:50AM or by appointment.
Note:
Generally, feel free to drop in if my office door is open. If it
is closed, I'm desperately seeking to keep on top of things and rabid attack
ferrets may drop from the ceiling in my defense.
Phone: 337-6643
E-mail:
Grading
80% Assignments
20% Oral/Written Quizzes, Attendance
You are responsible to know the material from each lecture and reading
assignment before the start of the next class. We may have some
unannounced quizzes to maintain accountability.
Homework is due at the beginning of lecture on the due date.
Late homework will not necessarily be accepted. Code must be a legal
program in the relevant language in order to be graded. (It need
not be free from logic errors.) For compiled languages, this means
that the program must compile without error. For interpreted languages,
this means it must be interpretable without error.
Class attendance and participation is required. If you attend
all classes and are willing to participate, you'll get 100% for this part
of your grade. Even if you know enough to give a particular lecture,
please consider the value of helping your peers during in-class exercises.
Honor Code
Honesty, Integrity, Honor. These are more important than anything
we will teach in this class. Students can and are encouraged to help
each other understand course concepts, but all graded work must be done
independently. The work you submit (including both code and problem solving
ideas expressed in the code) should be your independent work. For
detailed information about the honor code, see
http://www.gettysburg.edu/college_life/orgs/honor_code/index.html.