我需要了解如何访问作为输入提供给另一个函数的函数的输入。
例如; 我有一个名为 f 的函数,它只是执行(define f (lambda (x) (if (null? x) #t (car x))))
此操作。我需要编写一个函数,以这个 f 作为输入并返回另一个函数,这样,
- 定义一个(twoback f)
以函数 f 作为其输入的函数。
- 作为它的输出,它应该返回一个具有以下行为的新函数 g:
g(x) = #t 如果 x 是空列表或长度为 1 的列表。
= f(y) where y=(cdr x) otherwise.
该函数将像这样调用:((twoback f3) (list #t #f #t #f))
所以实际上我的问题是:如何访问我要编写的函数中的函数调用给出的列表(twoback 函数)?因为我需要检查它是否为空。