Lecture plan

Note: All students are advised to start reading the textbook and slides before the lectures.

At the beginning of a lecture, you should have identified an issue which you do not understand, and formulated a question about it.

The slides come in two formats; either

or In some cases, there are no slides available, just my notes.

You read the pdf files with Adobe Acrobat Reader.

Lecture 1

13-15, 9 November 2007

Hansen: 1-3
Paulson: 1, 2.1-2.19, 2.23
Ullman: 1-3, 5-9

Introduction

for projector, for printing,

Why functional programming

notes,

Lecture 2

15-17, 9 November 2007

SML

pdf, 4pdf, notes, programs.

Lecture 3

13-15, 16 November 2007

Hansen: 5
Paulson: 2.14-2.16, 3
Ullman: 4, 5, 10

Programming with recursion

pdf, 4pdf, notes, programs.

Lecture 4

15-17, 16 November 2007

Lists

pdf, 4pdf, notes, programs.

Lecture 5:

13-15, 23 November 2007

Hansen: 4, 7
Paulson: 3, 4.1-4.4, 4.10-4.13
Ullman: 12, 13

Type declarations

pdf, 4pdf, notes, programs.

Lecture 6:

15-17, 23 November 2007

Abstract datatypes

pdf, 4pdf, notes, programs.

Lecture 7:

13-15, 30 November 2007

Hansen: 9, 11
Paulson: 5.1-5.11, 7
Ullman: 11, 15

Sorting in a functional language

pdf, 4pdf, notes, programs.

Lecture 8:

15-17, 30 November 2007

Higher-order functions

pdf, 4pdf, notes, programs.

Lecture 9

13-15, 7 December 2007

General comments on the examples of this lecture and lazy evaluation.

Example: Representing infinite sequences using higher-order functions

Harper, chapter 30 programs (The book chapter requires the same password as the status page,)

Example: Representing infinite sequences using fail continuations

program example.

Lecture 10

Modules

All textbooks explain the module concept, but the chapter from Pucella's book may still be helpful. (Again, same password as the status page.)

pdf, 4pdf, Pucella, chapter 3 programs.

Standard library of SML

Notes on the standard library. Examples of interfaces in the standard library.
Last modified: Tue Dec 11 13:31:37 MET 2007