blob: ccc50b2d443c5b13ff06d89dc711f2a026ca7782 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
#lang racket
(define test-list '(this is a list))
(define nested-test-list '(this (is a) list))
(equal? test-list test-list)
(equal? nested-test-list nested-test-list)
;; Wouldn't it be interesting to define other equals? like only the leaves equal regardless of depth?
(define (rec-equal? seq1 seq2)
(cond ((or (null? seq1) (null? seq2)) true)
((and (pair? (car seq1)) (pair? (car seq2)))
(and (rec-equal? (car seq1) (car seq2))
(rec-equal? (cdr seq1) (cdr seq2))))
(else (and (eq? (car seq1) (car seq2))
(rec-equal? (cdr seq1) (cdr seq2))))))
(rec-equal? test-list test-list)
(rec-equal? nested-test-list test-list)
|