Declarative Programming

Subject COMP90048 (2011)

Note: This is an archived Handbook entry from 2011.

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

This subject is not offered in 2011.

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: None
Corequisites: None
Recommended Background Knowledge: Object Oriented Programming
Non Allowed Subjects:
Subject
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/

Contact

Dr Adrian Pearce

email: adrianrp@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:

None

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 Science (Computer Science)
Master of Software Systems Engineering
Related Majors/Minors/Specialisations: Master of Engineering (Software)

Download PDF version.