2014 Papers
Level 3 Papers >> All Papers
COMP313A Topics in Programming Languages

20 Points

This paper deals with the design, implementation and use of programming languages. Topics will be selected from the following:

  • the history and future of programming languages
  • grammars and parsing techniques
  • language implementation issues (interpreters, compilers, garbage collection)
  • practical language semantics
  • language support for object-orientation
  • declarative programming languages

Learning Outcomes
Students will be able to:

  • write programs in at least one functional language, which will mean solving computational problems and using such a language to define functions and modules which express those solutions;
  • describe what functions are defined by a piece of code in this language;
  • explain what those functions do;
  • compare and evaluate different solutions to problems written in different languages;
  • express the standard semantics for common imperative language constructs
  • write a simple interpreter for an imperative language in a functional language./li>

Pre Requisite Papers
COMP200 Computer Systems and one of
COMP203 Programming with Data Structures or
COMP241 Software Engineering Development

Lecturers and Tutors

A Semester

Official Timetable Information

On average you should expect to spend 12-14 hours per week on this course, in the following proportions: Lectures:3, Reading:2, Practicals:7-9.

Required Reading

This is an open-source textbook---we will be working through some of it during the course.

Recommended Reading
"The Haskell School of Expression", Paul Hudak, Cambridge University Press.

"Programming in Haskell", Graham Hutton, Cambridge University Press.

Other Reading Material
"The Denotational Description of Programming Languages", Michael Gordon, Springer-Verlag

Online Support
The paper will be supported in Moodle.

Computing Resources
Programming work will be done in lab 6 (though this is yet to be confirmed).

Means of Assessment
Assignments must be submitted, via Moodle, by the due date. All assignments must be submitted as as plain text since we will want to run your programs etc. We will not mark submissions in any other format. We will try to get assignments marked within two weeks.

Assessment Ratio
Internal assessment/final examination ratio 1:0

Assessment Components
Internal assessment will consist of several individual programming assignments, and some tests.

An overall mark of 50% is required for a pass.

Grading Schedule

Attendance Policy
Lecture attendance is expected. The course handouts provided are not comprehensive (they are really to guide me through the material—I'll say and do much more in the lectures than is written on the handouts), so additional material will be covered in the lectures. You are responsible for taking note of all material covered in the lectures.

Academic Integrity
Follow this link for Academic Integrity information and this link for detailed explanation of How to prevent plagiarism in Computer Science assessment items.

Performance Impairment
Follow this link for information on Performance Impairment.

Student Concerns and Complaints
Follow this link for Student Concerns and Complaints information.

Application for Extension
Follow this link for information on applying for an Extension.

Review of Grade
Follow this link for information on applying for a Review of Grade.

University Regulations
Your attention is drawn to the following regulations and policies, which are published in the University Calendar:

  2007 FCMS. The University of Waikato - Te Whare Wananga o Waikato