Functional Design and Programming Lecture 3: List processing
Literature (Pensum) Paulson, chap. 3: Introduction to lists ( ) Derived list functions ( ) Application: Matrix transposition (3.9) Sets: list representation ( ) Maps: association list representation (3.16) (Graphs: Depth-first search (3.17))
Exercises Paulson, chap. 3: , , , (obligatory: 3.8, , 3.33, 3.38, 3.41)
Introduction to lists Basic list constructors Basic list destructors (pattern matching) Definition by pattern matching and recursion
Time complexity Constant-time operations: definition Constant-time operations: examples
Derived list functions Derived constructors and destructors: hd, tl Observer function: null Derived complex list functions: append, reverse, drop, take
Application: Matrix transposition Matrices: Definition Transposition
Sets Sets: intuition, notation Basic set operations Sets implemented as lists
Maps Maps: finite functions Maps implemented as association lists