We don't have any textbooks for this subject yet.

Why don't you be the first?
Sell your textbook for COMP30020

We don't have any notes for this subject yet.

Why don't you list yours first?
Sell your notes for COMP30020


We don't have any tutors for this subject yet.

Why don't you become the first?
Become a tutor for COMP30020


Would be 5 if it didn't have the problems the user stated below. Hopefully next time its ran the problems will be fixed because they seemed to be transitional problems. It was poor that this happened, but the subject is still great, especially if you are more of a CS nerd and like pure programming and problem solving.

Anonymous, Semester 2, 2020

Don't take this subject. in Sem2 2020, they moved around the course so that the second half of the course (prolog) is moved before the first half (haskell). Normally this won't be an issue, but they literally just copy pasted the content. This meant that we began with hard abstract recursive content, which we self taught. And then in the middle of the course, we started learning introductory content.... which we had already taught ourselves. No effort was made to change the materials, slides were just copy pasted. The LMS dates for assignments were still from last semester until week 9. The projects were arbitrary and dull. The language prolog being learned is outdated and very niche. The instructor made 0 effort in making things interesting. It was code on slides, and 3 paragraphs of text explaining it, and in lectures he would just read over them. I would avoid this, teach yourself haskell and functional programming outside this subject. A pretty bad experience overall.

Anonymous, Semester 2, 2020

I would avoid this subject if you're an average student. The concepts are very abstract and nothing like other programming languages. Plus it's not really of any use in almost every context you could think of.

Anonymous, Semester 2, 2020

It is one of the most fun subjects but a little bit challenging as well. That's because declarative programming languages (Haskell and Prolog) are different from your daily using imperative languages (Java, Python, C, C++). The teacher creates project tasks, and you can't find anything similar, so you have to be creative as well to solve them. Don't leave them until the last day - probably you can't complete them in time. Exams are very similar to the tutorials, so if you can solve them, there is no reason to worry.

Anonymous, Semester 2, 2017