USQ Logo
The current and official versions of the course specifications are available on the web at
Please consult the web for updates that may occur during the year.

CSC3403 Comparative Programming Languages

Semester 1, 2021 Online
Short Description: Comparative Program Languages
Units : 1
Faculty or Section : Faculty of Health, Engineering and Sciences
School or Department : School of Sciences
Student contribution band : Band 2
ASCED code : 020101 - Formal Language Theory
Grading basis : Graded
Version produced : 14 April 2021


Examiner: Matthew Mengel


Pre-req: CSC2408; and
Pre-req or Co-req: CSC2402; or
Students must be enrolled in one of the following Programs: GDTI or GCSC or GCEN or METC or MCOT or MCTE or MCOP or MPIT
Enrolment is not permitted in CSC3403 if CIS3001 has been previously completed

Other requisites

Students who do not meet the pre-requisite requirements must obtain approval of the examiner and the program coordinator to be enrolled in this course.
Students who have enrolled in or completed CSC8503 Principles of Programming Languages cannot not enrol in this course.


Programming languages are the basic means of communication between humans and computers. The number of available programming languages is large and it continues to increase. However, programming languages are more alike than different. In order to learn and grasp new languages with minimum time and effort, computing professionals need to know the basic structure, the semantics and the basic elements that are common in all programming languages. They also need to understand the design principles of various programming languages and be familiar with the similarities and differences of programming languages. This course provides such understanding and knowledge.


This course addresses the principles of programming languages. The course emphasizes the interpretation of the structure and the semantics of programming languages. Students examines the major elements of languages such as types, objects, names, scopes, expressions, functions, procedures, parameters and control structures. Run-time storage management is also covered in detail. Students will demonstrate a deep understanding of the semantics and the implementation of programming languages.


On successful completion of this course students should be able to:

  1. Interpret programming language syntax and semantics;
  2. Analyse the features of different programming languages, with a particular focus on imperative language features;
  3. Analyse and compare different language paradigms, with a particular emphasis on functional and logic programming languages.


Description Weighting(%)
1. Language Evolution and Evaluation 5.00
2. Formal Description of Languages 15.00
3. Variables and Data types 10.00
4. Expressions and Statements 7.00
5. Subprogram Design and Implementation 15.00
6. Functional Languages 18.00
7. Abstract Data Types 4.00
8. Exceptions 4.00
9. Object oriented languages 4.00
10. Logic Languages 18.00

Text and materials required to be purchased or accessed

ALL textbooks and materials available to be purchased can be sourced from USQ's Online Bookshop (unless otherwise stated). (

Please contact us for alternative purchase options from USQ Bookshop. (

Sebesta, R.W 2016, Concepts of Programming Languages, 11th edn, Pearson Higher Ed, USA.
(ISBN 9781292100555 Or alternatively eBook version from
Other material that will assist in study of this course will be available from the course USQStudyDesk page.

Reference materials

Reference materials are materials that, if accessed by students, may improve their knowledge and understanding of the material in the course and enrich their learning experience.
Bird, Richard 1998, Introduction to Functional Programming using Haskell, 2nd edn, Prentice-Hall, London.
Bratko, Ivan 2011, Prolog programming for artificial intelligence, 4th edn, Addison-Wesley, Harlow.
Davie, Antony, J.T 1992, An Introduction to Functional Programming Systems using Haskell, Cambridge University Press, Cambridge.
Thompson, S 2011, Haskell: The Craft of Functional Programming, 3rd edn, Addison-Wesley, Harlow.
Students are not required to read or purchase these books. Study of these books could increase a student's understanding of the Haskell language, and improve their chances of gaining a higher grade in this course.

Student workload expectations

Activity Hours
Assessments 42.00
Private Study 128.00

Assessment details

Description Marks out of Wtg (%) Due Date Objectives Assessed Notes
ASSIGNMENT 1 10 10 30 Mar 2021 1
ASSIGNMENT 2 12 12 04 May 2021 3
ASSIGNMENT 3 12 12 31 May 2021 3
OPEN EXAMINATION - ONLINE 66 66 End S1 1,2,3 (see note 1)

  1. This will be an online exam. Students will be provided further instruction regarding the exam by their course examiner via StudyDesk. The examination date will be available via UConnect when the Alternate Assessment Schedule has been released.

Important assessment information

  1. Attendance requirements:
    There are no attendance requirements for this course. However, it is the students' responsibility to study all material provided to them or required to be accessed by them to maximise their chance of meeting the objectives of the course and to be informed of course-related activities and administration.

  2. Requirements for students to complete each assessment item satisfactorily:
    To complete each of the assessment items satisfactorily, students must obtain at least 50% of the marks available for each assessment item.

  3. Penalties for late submission of required work:
    Students should refer to the Assessment Procedure (point 4.2.4)

  4. Requirements for student to be awarded a passing grade in the course:
    Due to COVID-19 the requirements for S1 2021 are:
    To be assured of receiving a passing grade a student must achieve at least 50% of the total weighted marks available for the course.

    Requirements after S1 2021:
    To be assured of receiving a passing grade a student must obtain at least 50% of the total weighted marks available for the course (i.e. the Primary Hurdle), and have satisfied the Secondary Hurdle (Supervised), i.e. the end of semester examination by achieving at least 40% of the weighted marks available for that assessment item.

    Supplementary assessment may be offered where a student has undertaken all of the required summative assessment items and has passed the Primary Hurdle but failed to satisfy the Secondary Hurdle (Supervised), or has satisfied the Secondary Hurdle (Supervised) but failed to achieve a passing Final Grade by 5% or less of the total weighted Marks.

    To be awarded a passing grade for a supplementary assessment item (if applicable), a student must achieve at least 50% of the available marks for the supplementary assessment item as per the Assessment Procedure (point 4.4.2).

  5. Method used to combine assessment results to attain final grade:
    The final grades for students will be assigned on the basis of the weighted aggregate of the marks obtained for each of the summative assessment items in the course.

  6. Examination information:
    Due to COVID-19 the requirements for S1 2021 are:
    An Open Examination is one in which candidates may have access to any printed or written material and a calculator during the examination.

    Requirements after S1 2021:
    An open examination is one in which candidates may have access to any printed or written material and a calculator during the examination.

  7. Examination period when Deferred/Supplementary examinations will be held:
    Normally Deferred and Supplementary Examinations are held in the next Examination period. In S1 2021 selected courses will pilot an early Deferred and Supplementary Examination period held within 30 business days of results release. The list of courses involved can be found at

  8. University Student Policies:
    Students should read the USQ policies: Definitions, Assessment and Student Academic Misconduct to avoid actions which might contravene University policies and practices. These policies can be found at

Other requirements

  1. Students will require access to e-mail, internet access and access to UConnect for this course.

  2. Students can expect that questions in assessment items in this course may draw upon knowledge and skills that they can reasonably be expected to have acquired before enrolling in the course. This includes knowledge contained in pre-requisite courses and appropriate communication, information literacy, analytical, critical thinking, problem solving or numeracy skills. Students who do not possess such knowledge and skills should not expect to achieve the same grades as those students who do possess them.

Date printed 14 April 2021