CP2003 - Principles of Programming Languages

Syllabus

Subject Description

CP2003 studies basic concepts in the design of programming languages. The only prerequisite subject to this is CP2001 and as such, students are expected to already be familiar with the programming environment and specifically in the C++ programming language. Examples of concepts will be presented using specific languages (Java, for example). At the end of the subject, students will be familiar with the concepts that are commonly available in widely used programming languages.

Contact Information

Alan McCabe
TESAG Rm TG149
alan@cs.jcu.edu.au

Meeting Times

Lectures: Wednesday 1pm (MP101), Thursday 11am (MP101), Friday 8am (MP101)
Tutorial: One of either: Monday 9-12am, Thursday 6-9pm, Friday 9-12am

Text:

``Programming Language Concepts and Paradigms''. David A. Watt. Prentice-Hall, 1990.

Reference:

Lecture notes will be put on reserve in the library during the semester and on the WWW as well. Programming language reference will be placed on reserve in the library as needed (e.g. language-specific texts). Additionally, a list of on-line references will be available as links from the CP2003 homepage.

IMPORTANT NOTE:

The text is the primary source for this subject along with the provided lecture notes. It is intended that the lecture notes cover all of the required information, but the text is an extremely useful companion to the notes. Test materials will come from both the text and the provided notes.

Subject Syllabus

The following topics will be covered in the order shown. Where possible the relevant chapters of the text are given.

  1. Introduction (Chapter 1)
  2. Values and Types (Chapter 2)
  3. Storage (Chapter 3)
  4. Bindings (Chapter 4)
  5. Abstraction (Chapter 5)
  6. Encapsulation (Chapter 6)
  7. Type Systems (Chapter 7)
  8. Imperative Paradigm (Chapter 10)
  9. Object Paradigm (Chapter 12)
  10. Functional Paradigm (Chapter 13)

Assessment

Assessment will consist of three assignments, an on-course quiz and a final exam. To pass the subject, a student must pass both the final and the on-course assessment. The assessment weightings given below:

  Assignment one: --15%
  Assignment two, three: --10% each
  Tutorials: 10%
  MidExam: 10%
  Final Exam: 45%

Due dates are not yet finalized, however students will be given ample notification of assignments and due dates during the semester. Assignments submitted after the due date will be subject to a ten percent per day penalty. Extensions of the due date will be granted if supporting documentary evidence is supplied (e.g. a doctor's certificate). Applications for an extension must be made to the lecturer before the due date.

Plagiarism is considered a serious offence. Plagiarism will result in a severe loss of marks for all guilty students involved, also punitive marks and possible expulsion from subject/JCU will be considered.


Copyright © 1998. Alan McCabe. All rights reserved.