Enrolments for this year have closed. Keep exploring subjects.
Online & on-campus
Subjects may require attendance
QS RANKING 2022
Times Higher Education Ranking 2022
Upon completion of this subject, students will be able to:
- analyse how programming languages relate to models of reasoning about a computer program;
- write programs in a modern functional programming language;
- build systems that use abstractions for asynchronous programming and reactive streams;
- understand and apply advanced language features and type systems in the design of programs; and
- understand the use of functional programming in practice.
- Topics will be available to enrolled students in the subjects Learning Management System site approximately one week prior to the commencement of the teaching period.
You must either have successfully completed the following subject(s) before starting this subject, or currently be enrolled in the following subject(s) in a prior study period; or enrol in the following subject(s) to study prior to this subject:
and one of
- UNE-COSC101-Software Development Studio 1
- UNE-COSC110-Introduction to Programming and the UNIX Environment
- UNE-AMTH250-Introduction to Programming in The Sciences
- UNE-SCI210-Introduction to Scientific Programming
Please note that your enrolment in this subject is conditional on successful completion of these prerequisite subject(s). If you study the prerequisite subject(s) in the study period immediately prior to studying this subject, your result for the prerequisite subject(s) will not be finalised prior to the close of enrolment. In this situation, should you not complete your prerequisite subject(s) successfully you should not continue with your enrolment in this subject. If you are currently enrolled in the prerequisite subject(s) and believe you may not complete these all successfully, it is your responsibility to reschedule your study of this subject to give you time to re-attempt the prerequisite subject(s)
Candidature in Diploma in Information Technology. To enrol in this subject you will need to pass the Prerequisite/s. Please note as UNE results are released after the close of enrolment date, your enrolment into this subject will be withdrawn if you do not pass the prerequisite subject/s. A knowledge of, and programming experience with, a high level programming language is recommended. Experience with the use of the Linux/UNIX operating system is highly recommended. UNE-AMTH140 is a recommended unit.
- Equipment requirements - Headphones or speakers (required to listen to lectures and other media) Headset, including microphone (highly recommended) Webcam (may be required for participation in virtual classrooms and/or media presentations).
- Software requirements - It is essential for students to have reliable internet access in order to participate in and complete your units, regardless of whether they contain an on campus attendance or intensive school component. For additional information please visit UNE Hardware Requirements: https://www.une.edu.au/current-students/support/it-services/hardware
- Travel requirements - Travel may be required to attend the Final Examination for this subject.
- Other requirements -
Textbook information is not available until approximately 8 weeks prior to the commencement of the Teaching period.
Students are expected to purchase prescribed material.
Textbook requirements may vary from one teaching period to the next.
A programming language gives us a way of modelling and expressing a computer program. As programs tackle more complex tasks using big, fast, and distributed flows of data, the need for more powerful ways to think about and express our programs will only increase. This subject introduces you to the paradigms (the particular styles or features) behind advanced programming languages used by many of the world’s leading software companies. Taught predominantly using Scala, a mixed-paradigm language that will familiarise you with many concepts, the subject helps you to develop knowledge and technical skills with broad practical applications. You will learn about functional programming, different type systems, and techniques for asynchronous, streaming and reactive programming. These techniques are useful across a wide spectrum – from making small problems simple, to modern event-based web systems, to “fast data” systems that process large flows of asynchronous data.
Assessment 1: Programming and analysis. Relates to Learning Outcomes 1-5 Assessment 2: Programming and analysis. Relates to Learning Outcomes 1-5 Assessment 3: Programming and analysis. Relates to Learning Outcomes 1-5 Assessment 4: Quizzes and exercises Five at 2% each. Relates to Learning Outcomes 1- 5 Final Examination: 2 hrs 15 mins. It is mandatory to pass this component in order to pass the unit. Relates to Learning Outcomes 1- 5 There is a supervised exam at the end of the teaching period in which you are enrolled. The exam will either be paper-based and offered at an established exam venue or online with supervision via webcam and screen sharing technology. Coordinated by UNE Exams Unit. UNE manages supervised exams associated with your UNE subjects. Prior to census date, UNE releases exam timetables. They’ll email important exam information directly to your UNE email address.
- Assessment 1 - Programming and analysis. (10%)
- Assessment 2 - Programming and analysis. (20%)
- Assessment 3 - Programming and analysis. (30%)
- Assessment 4 - Quizzes and exercises Five at 2% each. (10%)
- Final Examination - 2 hrs 15 mins (30%)