Preparation Read the corresponding notes on letrec and name let .
Iota, revisited As you may recall, Iota takes a natural number as argument and returns a list of all the lesser natural numbers in ascending order. Taking some elements Define and test a procedure named take that takes a list ls and a non-negative integer len as arguments and returns a list consisting of the first len elements of ls , in their original order. The procedure should signal an error if ls is not a list, if len is not an exact integer, if len is negative, or if len is greater than the length of ls . Intersection a. Define and test a procedure named intersection that takes two lists of symbols, left and right , as arguments and returns a list of which the elements are precisely those symbols that are elements of both left and right . Any or all of the information on the pages may be incorrect.