Enrolments for this year have closed. Keep exploring subjects.
Online & on-campus
Subjects may require attendance
QS RANKING 2021
Times Higher Education Ranking 2021
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 programmers a way of modelling and expressing a computer program. Different programming languages are based on different ideas about how one thinks about computer programs.
This subject introduces students to the paradigms behind advanced programming languages that are used by many of the world's leading software companies. The unit is taught predominantly using Scala, as a mixed-paradigm language that allows many concepts to be introduced.
The subject introduces modern functional programming, different type systems, and techniques for asynchronous, streaming, and reactive programming. These techniques are useful at a wide spectrum of scales - 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%)