Advanced Programming Language Concepts

Undergraduate | 2026

Course page banner
area/catalogue icon
Area/Catalogue
COMP 3009
Course ID icon
Course ID
203291
Level of study
Level of study
Undergraduate
Unit value icon
Unit value
6
Course level icon
Course level
3
Study abroad and student exchange icon
Inbound study abroad and exchange
Inbound study abroad and exchange
The fee you pay will depend on the number and type of courses you study.
Yes
University-wide elective icon
University-wide elective course
Yes
Single course enrollment
Single course enrolment
Yes
alt
Note:
Course data is interim and subject to change

Course overview

This course aims to provide a comprehensive overview of advanced programming paradigms and methodologies. These include the design and development of programs that contain concurrency, inter-process communication and synchronisation. In addition, the course will focus on the design and development of new languages and factors influencing the acceptance of languages. By the end of the course, participants will have acquired the knowledge and skills necessary to tackle complex programming challenges with confidence and proficiency, empowering them to excel in their roles as software developers and engineers.

Course learning outcomes

  • Apply advanced programming language concepts such as inter-process communication, concurrency and synchronisation to various problems
  • Evaluate the performance of various concurrent programming solutions to the same problem
  • Apply development and testing approaches and tools to concurrent and parallel problems
  • Apply fundamental principles of programming language design
  • Create algebraic specification of abstract data types
  • Develop interpreter-based specification of programming languages

Prerequisite(s)

Corequisite(s)

N/A

Antirequisite(s)

N/A