Suppose we define the procedure
(define (f g) (g 2))
Then we have
(f square) 4 (f (lambda (z) (* z (+ z 1)))) 6
What happens if we (perversely) ask the interpreter to evaluate the combination (f f)? Explain.
Answer: Failure, because (f f) evaluates to (f 2), but then we get (2 2); the first 2 is not a function so the interpreter fails.