CIS 425 Fall 2012 CRN 12293 |
Last updated 2012/10/31 11:57:39
Class Details
- Class Times
- Lecture: MWF 9:00 - 9:50, 105 Esslinger
-
Instructor: David Atkins
- Office: Deschutes 334, 346-4413
- Office Hours: 11:00-12:00 MWF, and by appointment
- Email: datkins@uoregon.edu
-
GTF: Philip Johnson-Freyd
- Office: Deschutes 229, 346-1382
- Office Hours: Tuesday 1-4, Wednesday 12-1, and Friday 2-3
- Email: philipjf@cs.uoregon.edu
- Reference Material
- Strongly recommended Course Texts:
- Programming Languages - Principles and Practice, 3rd Edition, by Kenneth Louden and Kenneth Lambert, Cengage, 2012. [Available at the bookstore]
- Elements of ML Programming, by Jeffrey Ullman, Prentice Hall, 1997. [On reserve in the Science Library] Good reference for ML programming, won't be needed till half way through term.
- Other references:
-
Concepts of Programming Languages, 10th Edition,
by Robert Sebesta, Addison Wesley, 2012. [5th edition on reserve in the Science Library]
I have used earlier editions of this book before and it has clear explanations.
- The Design and Evolution of C++, by Bjarne Stroustrup, Addison Wesley, 1994. [On reserve in the Science Library]
Narrative of issues in real world language design.- The C++ Programming Language, Bjarne Stroustrup, Addison-Wesley, 2001.
Useful online excerpt from the book: A Tour of C++. - The Design and Evolution of C++, by Bjarne Stroustrup, Addison Wesley, 1994. [On reserve in the Science Library]
-
Concepts of Programming Languages, 10th Edition,
by Robert Sebesta, Addison Wesley, 2012. [5th edition on reserve in the Science Library]
I have used earlier editions of this book before and it has clear explanations.
- Strongly recommended Course Texts:
- Grading and Policy
- Approximate weighting: Assignments 25%, Midterm 30%, Final 35%, 10% quizzes and class/discussion participation/attendance
Course Objectives
- The primary objective of this course is to become familiar with the properties of programming languages in general and examine some of these concepts for specific languages. The main categories of languages will be covered along with the characteristics that distinguish them from each other. These categories include imperative, object oriented, functional, and logic languages; in each category we will examine one or more example languages. This course is not intended to make you an expert in all of these languages, but you will get to see some languages and programming paradigms that you may not have seen before, and will develop the ability to quickly assess and learn new languages. Some time will also be spent discussing practical constraints on programming language design. We will also take a look at an example of a "small" language designed for a specific application domain.
CIS 425 Academic Honesty Policy
- All assignments turned in for the course must be your own work. Copying from other class members or other sources is not acceptable. If you collaborate with someone else on any assignment, you must indicate such on the work you turn in, and partial credit may be given.
- Academic honesty is expected and cases of suspected dishonesty will be handled according to university policy. In particular, copying someone else's work (including material found on the web) will not be tolerated. If solutions to assignments are obtained from outside sources, the source must be cited.
- You are also responsible for protecting your work. That is, you must take reasonable precautions to prevent your work from being copied.