
COMPX307-22B (HAM)
Principles of Programming Languages
15 Points
Staff
Convenor(s)
Steve Reeves
4398
G.1.26
steve.reeves@waikato.ac.nz
|
|
Lecturer(s)
Colin Pilbrow
9584
G.1.11
colin.pilbrow@waikato.ac.nz
|
|
Steve Reeves
4398
G.1.26
steve.reeves@waikato.ac.nz
|
|
Administrator(s)
Librarian(s)
You can contact staff by:
- Calling +64 7 838 4466 select option 1, then enter the extension.
-
Extensions starting with 4, 5, 9 or 3 can also be direct dialled:
- For extensions starting with 4: dial +64 7 838 extension.
- For extensions starting with 5: dial +64 7 858 extension.
- For extensions starting with 9: dial +64 7 837 extension.
- For extensions starting with 3: dial +64 7 2620 + the last 3 digits of the extension e.g. 3123 = +64 7 262 0123.
Paper Description
This paper deals with the design, implementation and use of programming languages, and expands your knowledge and expertise beyond imperative languages. Topics will be selected from the following:
- the history and future of programming languages
- grammars and parsing techniques
- language implementation issues (interpreters, compilers)
- programming language semantics
- declarative programming languages
The learning outcomes for this paper are linked to Washington Accord graduate attributes WA1-WA11. Explanation of the graduate attributes can be found at: https://www.ieagreements.org/assets/Uploads/Documents/IEA-Graduate-Attributes-and-Professional-Competencies-2021.1-Sept-2021.pdf
Paper Structure
The paper will be taught via a mixture of streamed online and also live lectures (and all of which will be Panopto-ed), via a series of courseworks and a couple of tests too.
Please keep up to date with Moodle as that will have details of whether lectures for a week will be online only or in lecture theatres.
Learning Outcomes
Students who successfully complete the paper should be able to:
Assessment
Assignments must be submitted, via Moodle, by the due date. All assignments must be submitted as as plain text since we will want to run your programs etc. We will not mark submissions in any other format. We will try to get assignments marked within two weeks.
Samples of your work may be required as part of the Engineering New Zealand accreditation process for BE(Hons) degrees. Any samples taken will have the student name and ID redacted. If you do not want samples of your work collected then please email the engineering administrator, Natalie Shaw (natalie.shaw@waikato.ac.nz), to opt out.
Assessment Components
The internal assessment/exam ratio (as stated in the University Calendar) is 100:0. There is no final exam.
Required and Recommended Readings
Required Readings
Required Reading
http://en.wikibooks.org/wiki/Haskell
This is an open-source textbook---we will be working through some of it during the course.
Recommended Readings
Recommended Reading
"The Haskell School of Expression", Paul Hudak, Cambridge University Press.
"Programming in Haskell", Graham Hutton, Cambridge University Press.
Other Reading Material
"The Denotational Description of Programming Languages", Michael Gordon, Springer-Verlag
Online Support
Workload
Linkages to Other Papers
Prerequisite(s)
Prerequisite papers: COMP200 or COMPX203 and one of COMP203, COMP241, COMPX201, COMPX241