Page 1

Functional Programming

Reflections

Questions and Answers

Page 2

Course content

Page 3

Learning outcomes

Page 4

Functions as first class values

Page 5

Example: an abstract data type for sets

Page 6

How to represent sets

Three possible representations

Page 7

Representing sets as lists

Page 8

Representing sets as binary search trees

Page 9

Representing sets as functions

Page 10

Software prototyping experiment (1)

Page 11

Software prototyping experiment (2)

Page 12

Software prototyping experiment (3)

Page 13

Software prototyping experiment (4)

Key design choice

Page 14

What can Haskell be used for?

Examples

Page 15
What can Haskell be used for? → Examples

From lwn.net: Stephen Diehl: Reflecting on Haskell in 2017:

Page 16

Some Haskell software I have worked on

Page 17

Questions and Answers

Page 18

Recommended video

Page 19

The End