console.log(storage)
我已编写此代码以检查第一个列表是否出现在第二个列表中,即第二个列表包含第一个列表。对我来说一切似乎都很好,但它表示对象bla bla(显示第一个列表)不适用。
任何帮助将不胜感激。应该很容易,但是看不到它。
答案 0 :(得分:1)
您有几个括号问题,可能是因为您认为参数列表应该用括号括起来 您应该在函数名称之后依次编写参数。
表格
(define subset? (lambda (st1 st2) ...
很容易导致这个错误,但是等效形式
(define (subset? st1 st2) ...
看起来像函数应用程序看起来。
所以,在
(in? ((car st1) st2))
您尝试将(car st1)
应用于st2
并将结果传递给in?
;在
(subset? ((cdr st1) st2))
您尝试将(cdr st1)
应用于st2
并将结果传递给subset?
;并在
(null? (st1))
您尝试在没有任何参数的情况下致电st1
并将结果传递给null?
。
正确的语法是
(in? (car st1) st2)
(subset? (cdr st1) st2)
(null? st1)