5.1 Motivating Example
5.2 Function Refresher
5.3 Making and Using Functions
5.4 Problem Decomposition
5.5 Function Literals
5.6 Non-Functional Functions/Procedures
5.7 type Declarations
5.8 Putting it Together