Declarative Programming

Subject COMP90048 (2010)

Note: This is an archived Handbook entry from 2010.

Credit Points: 12.50
Level: 9 (Graduate/Postgraduate)
Dates & Locations:

This subject has the following teaching availabilities in 2010:

Semester 2, Parkville - Taught on campus.
Pre-teaching Period Start not applicable
Teaching Period not applicable
Assessment Period End not applicable
Last date to Self-Enrol not applicable
Census Date not applicable
Last date to Withdraw without fail not applicable


Timetable can be viewed here. For information about these dates, click here.
Time Commitment: Contact Hours: 24 one-hour lectures (two per week) and 12 one-hour workshops (one per week)
Total Time Commitment: 120 hours
Prerequisites:

The prerequisites for this subject are:

433-298 Algorithms and Data Structures OR 433-521 Algorithms and Complexity OR 433-253 Algorithms and Data Structures

Corequisites: None
Recommended Background Knowledge: Object Oriented Programming
Non Allowed Subjects: 433-326 Declarative Programming
Core Participation Requirements:

For the purposes of considering request for Reasonable Adjustments under the Disability Standards for Education (Cwth 2005), and Students Experiencing Academic Disadvantage Policy, academic requirements for this subject are articulated in the Subject Description, Subject Objectives, Generic Skills and Assessment Requirements of this entry.The University is dedicated to provide support to those with special requirements. Further details on the Disability support scheme can be found at the Disability Liaison Unit Website:http://www.services.unimelb.edu.au/disability/

Coordinator

Dr Peter Schachte

Contact

Melbourne School of Engineering Office
Building 173, Grattan Street
The University of Melbourne
VIC 3010 Australia
General telephone enquiries
+ 61 3 8344 6703
+ 61 3 8344 6507
Facsimiles
+ 61 3 9349 2182
+ 61 3 8344 7707
Email
eng-info@unimelb.edu.au
Subject Overview: Declarative programming languages provide elegant and powerful programming paradigms that every programmer should know. Topics covered include functional programming, logic programming, constraint programming; declarative programming techniques, including higher order programming and the exploitation of advanced type systems; declarative languages as a competitive advantage, and how they fit into an environment dominated by imperative languages.
Objectives:

On completion of this subject, students should be able to:

  • Apply declarative programming techniques
  • Write medium size programs in a declarative language
  • Write programs in which different components use different languages; and
  • Select appropriate languages for each component task in a project.
Assessment: Project work during semester, expected to take about 36 hours (40%); a mid-semester test (10%); and a 2-hour end-of-semester written examination (50%). To pass the subject, students must obtain at least 50% overall, 20/40 in project work, and 30/60 in the mid-semester test and end-of-semester written examination combined.
Prescribed Texts: TBA
Breadth Options:

This subject is not available as a breadth subject.

Fees Information: Subject EFTSL, Level, Discipline & Census Date
Generic Skills:

On completion of this subject students should have developed the following generic skills:

  • Ability to undertake problem identification, formulation and solution
  • Ability to utilise a systems approach to design and operational performance
  • Intellectual curiosity and creativity, including understanding of the philosophical and methodological bases of research activity
  • Openess to new ideas and unconventional critiques of received wisdom
  • Capacity for independent critical thought, rational inquiry and self-directed learning.
Related Course(s): Bachelor of Computer Science (Honours)
Master of Engineering in Distributed Computing
Master of Software Systems Engineering

Download PDF version.