2015/10/25

SICP 問題 2.54

(define (equal? a b)
  (or (and (not (pair? a))
           (not (pair? b))
           (eq? a b))
      (and (pair? a)
           (pair? b)
           (equal? (car a) (car b))
           (equal? (cdr a) (cdr b)))))
gosh> (equal? '(this is a list) '(this is a list))
#t
gosh> (equal? '(this is a list) '(this (is a) list))
#f

© 2022 wat-aro