坏函数对象

时间:2017-02-13 04:42:02

标签: scheme

我试图比较两个列表中是否有相同的元素而不考虑顺序。

元素-的?是set函数的一部分,用于检查元素是否属于set

`(define (element-of? x set)
  (cond ((null? set) #f)
        ((equal? x (car set)) #t)
        (else (element-of? x (cdr set)))))
`

这是我的代码,用于检查列表" a"与列表" b"

具有相同的元素
`(define (check-unit-match cmp-to cmp-with)
  (cond ((null? cmp-to) #t )
        (else (let ((cmp-val (element-of? (car cmp-to) cmp-with)))
                (and cmp-val (check-unit-match (cdr cmp-to) (cmp-with)))))))
`

我的功能对象不好:((m 2)(sec 1))

当我通过以下论点时  (单位匹配'((第1段)(m 2))'((m 2)(第1段)))

1 个答案:

答案 0 :(得分:0)

您的最后一行包含(cmp-with)。这是一个功能应用程序。但是cmp-with是一个列表,而不是一个函数。