Search code examples
listcomparisonlispscheme

scheme list equivalence comparison


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 ?


Solution

  • 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.