**Exercise 2.1** | The append function ** |

**Exercise 2.2** | A list replication function ** |

**Exercise 2.3** | More about string-merge * |

**Exercise 2.4** | Sublists of a list ** |

**Exercise 2.5** | A variant of number-interval * |

**Exercise 2.6** | A variant of string-of-char-list? ** |

**Exercise 2.7** | Using `flip`, `negate`, and `compose` * |

**Exercise 2.8** | Linear string search ** |

**Exercise 2.9** | Index in list ** |

**Exercise 2.10** | Binary search in sorted vectors *** |

**Exercise 2.11** | Generating a C-style compare function ** |

**Exercise 2.12** | Higher-order functions in 'Functional Programming Languages' ** |

**Exercise 2.13** | Iterative mapping function ** |

**Exercise 2.14** | Table exercise: transposing, row elimination, and column elimination. ** |

**Exercise 2.15** | A straightforward filter function ** |

**Exercise 2.16** | Quantifier Functions ** |

**Exercise 2.17** | Playing with curried functions in Scheme * |

**Exercise 2.18** | Generation of functions with a very flexible signature *** |

**Exercise 2.19** | Generalization of curry-2 and curry-3 *** |

**Exercise 2.20** | Generalized compose *** |

**Exercise 2.21** | Generation of approximations to differentiated functions ** |

**Exercise 2.22** | The cartesian product of two sets ** |

**Exercise 2.23** | Powerset ** |

**Exercise 2.24** | Generation of get-prop |