Semester 1, 2022 Toowoomba On-campus | |
Units : | 1 |
Faculty or Section : | Faculty of Health, Engineering and Sciences |
School or Department : | School of Mathematics, Physics & Computing |
Grading basis : | Graded |
Course fee schedule : | /current-students/administration/fees/fee-schedules |
Staffing
Examiner:
Requisites
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
Overview
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.
Course learning outcomes
On successful completion of this course students should be able to:
- Interpret programming language syntax and semantics;
- Analyse the features of different programming languages, with a particular focus on imperative language features;
- Analyse and compare different language paradigms, with a particular emphasis on functional and logic programming languages.
Topics
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
(ISBN 9781292100555 Or alternatively eBook version from .)
Student workload expectations
To do well in this subject, students are expected to commit approximately 10 hours per week including class contact hours, independent study, and all assessment tasks. If you are undertaking additional activities, which may include placements and residential schools, the weekly workload hours may vary.
Assessment details
Description | Group Assessment |
Weighting (%) | Course learning outcomes |
---|---|---|---|
Problem Solving | No | 15 | 1,2 |
Tech and/or scntific artefact 1 | No | 20 | 3 |
Tech and/or scntific artefact 2 | No | 20 | 3 |
Time limited online examinatn | No | 45 | 1,2,3 |