Tip:
Highlight text to annotate it
X
PETER VAN ROY: Software is the heart of modern society.
Software is what makes everything run.
Well, I'm Peter Van Roy.
And I will be teaching the course Paradigms of Computer Programming,
where we look at software in a uniform framework.
Bringing together many of the most recent advances.
A paradigm is an approach to programming a computer based
on a set of cohered principles or a mathematical theory.
So this course will cover three of the most important programming paradigms;
functional programming, object oriented programming,
and deterministic data flow, a form of concurrent programming,
which is very simple, and which in my view should be kind of the heart of it.
In fact, the course is not for complete beginners.
It's a second year university course.
So this course is intended both for students and for software development
professionals.
So there are many highlights in this course, things
that professionals might not have seen in their own education.
So I'm not going to simplify things, I'm going to talk about the things
at the right level of complexity.
This course uses the OZ programming language.
OS is a research language that simplifies these concepts
and takes them to their natural factored extreme.
Base for this course is the book Concepts, techniques and Models
of Computer Programming.
This book was written by myself and by Seif Haridi, published
in 2004 by MIT Press.
So this book is still popular now, 2013, quite unusual for a programming book.
It tries really to present the concepts in a timeless way
to show the progression.
The Colonel language approach was first really used in depth in this book.
And it shows very, very many different paradigms.
So now you've seen the motivation and the themes of the course.
Now, we're going to show you in another video the practical organization
of the course.