433-430 Principles of Programming Languages

Note

Credit may not be gained for both 433-430 Principles of Programming Languages and 433-630 Principles of Programming Languages.

Credit Points

12.5

Prerequisites

Study at the third-year level in at least four of the following areas: artificial intelligence, computer design, database systems, graphics, interactive system design, networks and communications, operating systems, programming languages, software engineering, and theory of computation.

Semester

1 (view timetable)

Contact

Twenty-four hours of lectures and 11 hours of workshops

Subject Description

We communicate with computers in a variety of ways, but sophisticated requests need powerful formalisms for their expression. Programming languages form a suprisingly varied collection of notation for the specification of computing tasts. The study of programming languages is fascinating and important, as good programming language design and implementation is the enabling technology that allows us to improve software productitivity and quality.

Topics covered include: programming language concepts: values, variables, bindings, types, execution and control, exceptions, nondeterminism, polymorphism, higher-order programming, encapsulation, abstract datatypes, modularity; programming language paradigms: object-oriented, functional and logic programming; programming language design: syntax, semantics, abstraction, binding time, memory management, efficiency.

Assessment

Written essay of no more than 10 pages, due in the last third of semester (25%), oral presentation (5%), and a 2-hour end of semester written examination (70%).



Status:                   Official 2007
Last Modified:            Tuesday October 31 22:20
SGML to HTML Conversion:  Information Division - CWIS (SDI)
Authorised by:            Academic Registrar
Enquiries:                http://unimelb.custhelp.com/

Valid CSS! Valid XHTML 1.0!