| COMP 304 |
CRN 964, 15 Points (2010 1/3) |
| Coordinator: |
A/Prof Thomas Kühne
|
| Lecturer: |
A/Prof Lindsay Groves
|
| Prerequisites: |
COMP 202 or SWEN 202; one of COMP 201, 205, 206, ENGR 202, SWEN 201; MATH 114 or 161 |
| Lectures: |
Mon 4-5, Tue Thu 12-1 timetable |
| Tutorials: |
1 hour per week |
| Textbook: |
There are many textbooks on programming languages, which all have a variety of strengths and weaknesses. In the past, the following textbook has been weakly recommended: Kenneth C Louden, Programming Languages Principles and Practice, PWS Publishers 1993. This book is on 3-day reserve in the Library. There are a number of other comparative programming language books on 3-day reserve which are roughly equivalent. You are recommended to check which of these works best for you. |
| Prescription: |
This course addresses the principles of programming language design and use. It introduces different models of computation and the programming languages based on them, particularly functional programming and logic programming. It then examines a range of underlying issues in programming languages, such as semantics of programming languages, type systems, and control in programming languages. |
| Description: |
This course will broaden your knowledge about programming languages by introducing you to functional and logic programming and their underlying computational models. These are very different from the imperative underpinning of the programming languages discussed at levels 100 and 200. Understanding these paradigms and their associated programming techniques and idiomatic usages will not only put you into a better position to evaluate language designs but also will allow you to use a number of these techniques in conventional programming languages. This course also looks at the history of programming languages, enabling you to place the discussed programming languages into their respective context and thus obtain a broader perspective. Finally, this course covers some of the formal approaches to describe programming languages. |
|
Home Page
|