Computer Science Department
Courant Institute of Mathematical Sciences

Quick Menu


Course Structure
Open Door Policy

Programming Languages

G22.2110-001 - Spring 2011


General Information


    Recitation Leader and Graders


    • Location: WWH 109
    • Time: Thursdays 7:10-9:00 PM


    • Undergraduate courses in data structures and algorithms or equivalent, as well as familiarity and programming experience in C, C++, Ada, Java, Pascal or similar programming languages. Industry experience as a software developer is a plus.


    • Programming Language Pragmatics
      Michael L. Scott
      Morgan Kaufman
      ISBN-10: 0123745144, ISBN-13: 978-0123745149, 3rd Edition (04/06/09)
      The textbook covers both language design and compiler fundamentals. In your readings for this course you will not need to study the sections that focus on translation and compiler construction

    References - TBA


    • The powerpoint slides presented in class will be available for convenient browsing on the Web. The slide sets will also be available in PDF form for convenient printing and review.


    • Handouts may also be distributed in class and will, in some cases, be available in electronic form on the class Web site.

    Course Structure

    There will be one required lecture each week. Readings will be assigned at the end of each lecture. Throughout the course, there will be a number of programming assignments and projects using various programming languages as well as some non-programming homework. The compiler/interpreter to use for the programming assignments and projects will be specified on each given assignment/project along with the due date. Homework will be generally due right before class on the due date. The submission method (i.e. electronic submission, paper submissions, the format, etc.) will be specified in each homework. Late homework will not be accepted without the instructor's prior permission. Extensions are available only in the case of dire emergencies.

    There will be two tests: a midterm and a final in this class. No make-up exam will be scheduled. If you have a conflict with the exam date, you should not be taking this class without making prior arrangements with the instructor.

    Each student will have access to an account on the CIMS cluster. Please check with the instructor for information concerning your CIMS cluster account.

    A class mailing list has been setup to facilitate communication with the class pertaining to questions, assignments, grades, changes in requirements etc. The class Web page is This page will have further links to pages with announcements, handouts, etc. Students are required to log in and check the page at least once a week to make sure they are up to date with any information pertaining to the course.

    The Web site is the primary means of getting information outside of class. The mailing list will be used for urgent messages, such a updates and hints for the homeworks.

    If you have any questions, issues that you want to discuss, or things that you would like to have clarified, please see the instructor as soon as possible.

    The final grade for the course will be determined as follows:
    • Assignments 20%
    • Projects 20%
    • Attendance and class participation 10%
    • Midterm: 20%
    • Final 30%
    • Extra credit will be granted periodically for particular clever or creative solutions.
    To receive a passing grade, you must complete satisfactory work in every area. In other words, you must receive passing grades for your homework (cumulatively) and a passing grade on the final.

    If you have any concerns about your grade or about the grading, please feel free to see the instructor.

    NYU ID

    In order to access the ITS Computer Labs and Clusters, you must have a valid NYU ID card. See how to obtain an NYU ID card if you do not already have one.


    You are required to do the assignments and projects by yourself; collaborating with other students or copying their work will not be tolerated. Anyone found copying or using another persons work will be dealt with under NYU's procedures for cheating. The consequences range from receiving a failing grade for the assignment to expulsion. Please consult the department's academic integrity policy for more details.

    However, we do strongly encourage students to discuss the materials covered in class. It is also acceptable to help or receive help from other students concerning features of Windows, Linux, or the UNIX operating system, or any other application that you use. There is a fine line between discussion and cheating. If you feel uncertain about whether you are crossing the line feel free to discuss these issues with the instructor before you do so.

    Open Door Policy

    We would like the course to run smoothly and enjoyably. Feel free to let the instructor know what you find good and interesting about the course. Let the instructor know sooner about the reverse. See the instructor, leave him a note, or send him an email.

    Jean-Claude Franchitti, <jcf (followed by @, then cs, then a dot, then nyu, then a dot, and then edu)>
    Last modified: Wed April 20 04:31:18 EDT 2011