CSCE 330: Programming Language Structures

MWF 1325-1415 SWGN 2A21

Prerequisites: CSCE 212, CSCE 245, MATH 374

Instructor: Marco Valtorta
Office: Swaeringen 3A55, 777-4641
E-mail: mgv@cse.sc.edu
Office Hours: MWF 1030-1130
Teaching Assistant: TBD Sen Xu Office A111 300 Main, xu4@cse.sc.edu Office Hours: Tuesday 1330-1500 and Friday 1500-1630. Phone 777-7506

Syllabus

Grading Policy

Reference materials:

  • Ghezzi, Carlo and Mehdi Jazayeri. Programming Language Concepts. Wiley, 1998 (required text, referred to as [G]). Supplementary materials from the authors, including an errata list, are available. A local copy of the simplesem interpreter is available as a zip archive (simple.zip) at ftp://ftp.cse.sc.edu/pub/valtorta/. Simplesem has also been installed on the departmental Unix workstations (rivers and constellations): see /usr/local/etc/csce330. See below for an introduction to Simplesem and its use.
  • Ullman, Jeffrey D. Elements of ML Programming: ML97 Edition. Prentice-Hall, 1998 (required text, referred to as [U]). Supplementary materials from the author, including an errata list, are available.
  • The current departmental syllabus and the old departmental syllabus for CSCI 330 list the following goals for the course: Specific objectives of this course are:

    Lecture Log

    Lecture Notes

    Student Presentations
    Student presentation information

    Homework, Tests, and Programs

  • Grading policy per assignment
  • Homework 1 on preliminaries and history (in postscript format)
  • Solution guide for homework 1 on preliminaries and history (in postscript format)
  • Homework 2 on preliminaries and history (in postscript format)
  • Solution guide for homework 2 on preliminaries and history (in postscript format)
  • Old Test 1 (in postscript format, with answer, to help you prepare for the first test)
  • Homework 4 on variables, macros, subroutines, axiomatic semantics (in postscript format)
  • Homework 5 on denotational semantics (in postscript format)
  • Program 1 on Simplesem (in postscript format)
  • Practice test 2 (in postscript format, with answer, to help you prepare for the second test)
  • Program 4 in Prolog (in postscript format)
  • Program 5 in FP (in postscript format)
  • Test 2 with answer

    Quizzes
    Quiz 1 of 05-08-26 (in postscript format, with answer)
    Quiz 2 of 05-08-29 (in postscript format, with answer)
    Quiz 3 of 05-09-02 (in postscript format, with answer)
    Quiz 4 of 05-09-07 (in postscript format, with answer)
    Quiz 5 of 05-09-09 (in postscript format, with answer)
    Quiz 6 of 05-09-12 (in postscript format, with answer)
    Quiz 7 of 05-09-19 (in postscript format, with answer)
    Quiz 8 of 05-09-21 (in postscript format, with answer)
    Quiz 9 of 05-09-23 (in postscript format, with answer)
    Quiz 10 of 05-09-26 (in postscript format, with answer)
    Quiz 11 of 05-09-28 (in postscript format, with answer)
    Quiz 12 of 05-09-30 (in postscript format, with answer)
    Quiz 13 of 05-10-03 (in postscript format, with answer)
    Quiz 14 of 05-10-07 (in postscript format, with answer)
    Quiz 15 of 05-10-10 (in postscript format, with answer)
    Quiz 16 of 05-10-12 (in postscript format, with answer)
    Quiz 17 of 05-10-17 (in postscript format, with answer)
    Quiz 18 of 05-10-26 (in postscript format, with answer)
    Quiz 19 of 05-11-02 (in postscript format, with answer) (Note: question 3 had a typo in the version handed out and will be ignored for the purpose of grading.)
    Quiz 20 of 05-11-09 (in postscript format, with answer)

    ML Information

    Prolog Information

    Some useful links:
    In this class, we write dates according to ISO Standard 8601.
    The Ariane 5 launch disaster.
    Local copy of paper for HW2: Rajlich, V., N. Wilde, M. Buckellew. and H. Page. ``Software Cultures and Evolution.'' _Computer_, 34, 9 (September 2001), pp.24--28..
    Introduction to Simplesem and its use.
    Paper by Paul Graham on John McCarthy's original LISP interpreter.
    Local copy of the paper on the original LISP interpreter: postscript, two pages per sheet.
    Note for lectures on the LISP interpreter (in postcript)
    Paper by Paul Graham on a large application of LISP.
    FAQ for comp.lang.lisp.
    AutoLISP is used in AutoCAD
    How to view postscript in Windows: Wim Sweldens's web page on GSview.
    Carter Bays's FP interpreter
    Norman Matloff's Introduction to the vi Text editor
    Norman Matloff's Unix Tutorial Center
    A site with a short program written in many languages, not including FP.
    A site with onother short program written in several languages..
    John McCarthy, developer of LISP, wins the Franklin Medal