views:

483

answers:

2

Hello I need to check if two lists have same elements in same order but I wasn't able to achieve as it seems like scheme eq? and eqv? checks by reference so giving false to such:

> (eq? (list 1 2 3) (list 1 2 3))
#f
> (eqv? (list 1 2 3) (list 1 2 3))
#f

How to achieve this ?

+4  A: 

seems like equal? and eq? are seperate procedures where equal checks as I needed:

> (equal? (list 1 2 3) (list 1 2 3))
#t
Hellnar
+5  A: 

This site explains the difference between those operators. But essentially, you want to use equal when you want to compare the contents of two objects.

JG
thanks for the link JG
Hellnar