我想使用检查功能来检查该项目是在列表中还是在子列表中。但是这个错误真的让我很困惑。有人可以告诉我我的代码有什么问题吗?
(define check
(lambda(item lis)
(cond((null? lis) #f)
(else(if(pair? (car lis))
(if(check item (car lis)) #t (check item (cdr lis)))
(if(equal? item (car list)) #t (check item (cdr lis))))))))
> (check 'a '(a b))
. . car: contract violation
expected: pair?
given: #<procedure:list>