CSC 330: Programming Languages

CSC 330: Programming Languages



Instructor

Gene Fisher (gfisher@calpoly.edu)
Office: 14-210
Office Hours: MWF 10-11AM, Tu 9-11AM, and by appointment

Course Objectives


Prerequisites

CSC/CPE 103, 250.

Text and Other Class Materials

The principal textbook is Programming Languages: Principles and Paradigms by Tucker and Noonan. Supplemental books and reading materials will be available on the course website.

The course website is http://www.csc.calpoly.edu/~gfisher/classes/330

There is a variety of material on the site, organized into the following directories:


Activities

There will be a total of seven assignments, consisting of a combination of written problem sets and programs. There will be one midterm and a final. The tests will cover general programming language concepts as well as the the analysis and synthesis of specific concrete programs. The tests will be open book, open note.

Grading

The homework assignments are worth a total of 60% of the grade, the midterm 15%, and the final 25%. The assignments will be of roughly equal value, with later assignments generally worth somewhat more than earlier ones. Detailed point breakdowns and grading criteria will be provided for each assignment.

Programs must compile to receive any credit; i.e., non-compiling programs will receive a score of zero. Since "compilation" will have slightly different meanings for the different languages we will use, it will be defined specifically for each assignment. Additional scoring details will also be provided for each assignment.

If you find a problem with the grading on an assignment, you must submit it for regarding within ten days of when it was handed back. Grades will be posted on my.calpoly.edu. Be sure to check what is posted to make sure it agrees with your records.

Where and When to Turn in Assignments

The problem-set assignments are to be handed in on paper at the beginning of lecture on the due dates. The programs will be handed in electronically. Details of electronic turn-in will be given for each assignment.

Late Policy

Assignments must be turned in ON TIME to receive credit. Late assignments will not be accepted.

If you cannot get a program working by the due date, be sure to hand in what ever you have in order to get partial credit. Scoring details for partially- executing programs will be provided for each assignment. Note again, programs that do not compile will receive a score of zero, however much code you may have written.

Collaboration and Cheating

Each student must turn in an individual, original piece of work. It is OK to discuss general principles and ideas with colleagues, but assignments are not to be done in groups.

Use of anyone's solutions other than your own is considered cheating. This includes solutions from previous offerings of this or any other course, solutions you may find online, or solutions you get from any source other than your own brain.

Any instance of cheating or plagiarism will be referred to the campus office of judicial affairs. Campus cheating policies are defined online at


http://www.calpoly.edu/~saffairs/ja

Computer Accounts

You will receive a computer account that works on the CS department central UNIX machines falcon and hornet. The compilers and interpreters for the programming languages we will use all run on these machines. For your convenience, you can download compilers and interpreters to run on your own machine.

NOTE WELL: If you use a home compiler to development your programs, YOU MUST verify that the program compiles and runs on falcon/hornet before you hand it in. When you submit programs, they will be compiled and executed by a script that runs on falcon/hornet. You are responsible to ensure that your programs run the same on falcon/hornet as they do on any other computers you may use to develop the programs.



index | lectures | handouts | assignments | examples | doc | solutions | bin