Presentation is loading. Please wait.

Presentation is loading. Please wait.

Functional Design and Programming Lecture 6: Functions as data.

Similar presentations


Presentation on theme: "Functional Design and Programming Lecture 6: Functions as data."— Presentation transcript:

1 Functional Design and Programming Lecture 6: Functions as data

2 Literature (Pensum)  Paulson, chap. 5: Functions as values (5.1-5.4) Standard combinators List combinators (5.7-5.10) Other combinators (5.11) Infinite lists (5.12-5.16) Search strategies and infinite lists (5.17-5.20)

3 Exercises  Paulson, chap. 5:

4 Overview  Functions as values  Standard combinators List combinators Other combinators  Infinite lists  Search strategies and infinite lists

5 Functions as values  Lambda-notation (anonymous functions)  Currying and uncurring  Functions in data structures  Functions as arguments and results

6 Lambda-notation

7 Currying and uncurrying

8 Functions in data structures  Example: Mapping keywords to comparison functions (for sorting)

9 Functions as arguments and results  Examples: Lookup function for comparison functions parameterized sort function Summation

10 Standard combinators  List combinators: map, filter takewhile, dropwhile exists, all foldl, foldr  Other combinators: compose ( o ) repeat treefold

11 Infinite lists (sequences)  Datatypes for delayed evaluation  Elementary sequence processing  Elementary applications of sequences: Random numbers Prime numbers Numerical computing

12 Search strategies  Infinite trees  Search strategies for infinite trees: depth-first breadth-first depth-first iterative best-first  Toy applications: palindromes 8-queens


Download ppt "Functional Design and Programming Lecture 6: Functions as data."

Similar presentations


Ads by Google