SICP Exercise 1.34
Out f
procedure is defined as:
(define (f g)
(g 2))
Trying to ask the interpreter to evaluate (f f)
:
> (f f)
. . application: not a procedure;
expected a procedure that can be applied to arguments
given: 2
arguments...:
The first time f
is invoked, it will apply its argument (f) to 2. The second time it will try to apply its argument (2) to 2.
(f f)
(f 2)
(2 2)