University of York
Third Year
Principles of Programming (POP) | Principles of Programming (POP) |
| Thursday, 07 June 2007 | |
|
Description taken from CS website is: Computer Science is about solving problems using, or to do with, computers. This module teaches the fundamental principles involved in solving problems by means of computer programs. These principles have been discovered over the years by the experience of people actually writing programs, together with careful theoretical study of the programming patterns, or idioms, that are used. In order to talk about these principles, we need some language or notation - think how both maths and music use their notations. In Computer Science we are particularly fortunate since the notations that we use are both formal (we can reason about them), and active (we can execute them) - these notations are programming languages. The language we shall use, scheme, is ideal for the purposes of the module since it is very simple notationally (you don't have to learn lots of rules), but very powerful conceptually (all styles of programming can be clearly represented). In fact, it is so simple that we shall spend less than 10% of the time teaching scheme explicitly - you will learn it by using it to think about the Principles of Programming. The module is strongly based on what has been described as ``the best computer science book, ever'' - Abelson and Sussman's Structure and Interpretation of Computer Programs (see book-list, below). This is a book that you absolutely must buy, read, and study carefully. Although it is not used explicitly in other modules in your course, you will be able to use it to gain deeper insight into Computer Science as you study further topics. The module structure is based on the Teach-Consolidate-Assess cycle. Each week's lectures will normally consist of two lectures introducing new material followed by a third deepening your understanding by looking at the material in new ways. There will be supervised practicals each week, and consolidation exercises for you to do in your own time. The module covers the first half of Abelson and Sussman's book (see below). You should expect to spend a high proportion of your "private study" time reading the text, and trying the (many) problems and exercises that are presented there. Assessment: By Open Exam in Autumn Week 10, Programming in Scheme (50 Marks) Lecturer (when I took course):
Review: To Follow... Assessment Result: |