Please note: You are viewing the unstyled version of this web site. Either your browser does not support CSS (cascading style sheets) or it has been disabled.

Department of Computing

Local Navigation

Computing Department

Curriculum Page >> COMP332

Curriculum - COMP332 - Programming Languages

Handbook Entry Unit Home Page

Short Description

COMP332 provides exposure to scripting languages and functional programming to contrast with the imperative and object-oriented styles encountered in the rest of the curriculum. It also covers programming language implementation by compilers.

Assumed knowledge

  1. Exposure to at least a couple of different programming languages utilising the imperative and object-oriented styles. (COMP125, COMP225)
  2. Programming experience in a C-like language. (COMP225)
  3. An understanding of algorithms and data structures, particularly involving lists, stacks, and trees. Experience with programming using these algorithms and data structures. (COMP225)
  4. A basic understanding of mathematical foundations of programming languages including finite-state machines. (MATH237)
  5. An understanding of basic RISC assembler programming. (COMP226)

Learning outcomes

  1. An understanding of the major types of programming language that have been developed and an ability to evaluate languages on a feature-by-feature basis.
  2. A solid grasp of the most common features of programming languages and their semantics.
  3. An understanding of the standard decomposition of programming language compilers and how compiler phases cooperate to implement program translation. Experience understanding and analysing the structure and operation of a non-trivial software system.
  4. How to use regular expressions and context-free grammars to formally describe programming languages and how to transform these descriptions into lexical and syntactic analysers.
  5. How to represent programs in a compiler intermediate form and how to process that form to perform semantic analysis, transformation and code generation for common programming language features.
  6. Practical experience implementing the above compilation techniques.

Comments to: Steve Cassidy

[Back to top]

Copyright & Site information

  • CRICOS Provider No 00002J, ABN 90 952 801 237
  • Last Updated: Wednesday, 13-Feb-2008 17:29:53 EST
  • Authorised by: HOD