SENG6220

Programming Languages and Paradigms

10 Units

This course places programming into its correct theoretical context with the following topics: - Elementary Language Theory and Specification. - Low level implementation of language mechanisms (e.g. pointers, parameters, activation records and method tables). - Implementation of software structures in both Java and C++. - A comparison of object models in different object-oriented languages. - An introduction to non-object programming paradigms, e.g. list processing, functional and declarative languages.

Faculty Faculty of Engineering and Built Environment
School School of Electrical Engineering and Computer Science
Availability Semester 1 - 2015 (Callaghan Campus)
Learning Outcomes

On successful completion of this course, students will be able to:

  1. Use Elementary Language Theory and Specification to describe language features
  2. Program using advanced features of object-oriented languages
  3. Compare the low level implementation of language mechanisms, such as pointers and references, activation records, method tables, memory allocation/de-allocation and garbage collection, thread activation and communication
  4. Compare and analyse alternate parameter passing mechanisms
  5. Compare the object models in different object-oriented languages
  6. Describe and evaluate advanced programming language features
  7. Demonstrate an introductory understanding of concurrency and inter-process communication.
  8. Demonstrate an introductory understanding of the area of machine intelligence
  9. Describe the operation of non-object programming paradigms, eg. List processing, functional languages, and declarative languages
Content

This course places programming into its correct theoretical context with the following topics:

  • Elementary Language Theory and Specification
  • A second object-oriented language
  • Low level implementation of language mechanisms
  • 1.  pointers
  • 2.  activation records
  • 3.  method tables
  • 4.  memory allocation/de-allocation and garbage collection
  • 5.  process and thread activation and communication
  • Parameter passing mechanisms
  • A comparison of object models in different object-oriented languages.
  • An introduction to advanced programming language features.
  • An introduction to concurrency and inter-process communication.
  • An introduction to non-object programming paradigms, eg.
  • 1.   list processing
  • 2.   functional languages
  • 3.   declarative languages.
Replacing Course(s) This course replaces the following course(s): COMP6200. Students who have successfully completed COMP6200 are not eligible to enrol in SENG6220.
Assumed Knowledge SENG6110 Introduction to Software Engineering 1 and SENG6120 Introduction to Software Engineering 2.
Assessment Items
  • Quiz: Quiz - Class
  • Formal Examination: Examination: Formal *
  • Written Assignment: Essays / Written Assignments
  • Written Assignment: Review
Contact Hours
  • Lecture: for 3 hour(s) per Week for Full Term
  • Workshop: for 2 hour(s) per Week for Full Term
Requisites
  • Course Assessment Requirements:: 1. Formal Examination: Minimum Grade / Mark Requirement - Students must obtain a specified minimum grade / mark in this assessment item to pass the course. (Students must obtain 40% in the final exam to pass the course.)
Timetable 2015 Course Timetables for SENG6220

Sound like the course for you?

  Apply Now