동등성과 동일성

리스펙스는 원자·동일성 동등성(eq?, eqv?), 깊은 구조 동등성(equal?), 수치 동등성(=)을 분리합니다.

한눈에 보기

LISPEX
(list (= 2 2.0) (eqv? 2 2.0) (equal? (list 1 2) (list 1 2)))

결과

OUTPUT
(#t #f #t)

현재 보장

  • 이 프로필에서 eq?eqv?는 원자에 대해 같고 집합은 동일성으로 비교합니다.
  • eqv?equal?는 정확성에 민감하여 정확 2와 부정확 2.0은 다릅니다.
  • equal?는 순환 탐지와 함께 쌍, 벡터, 바이트벡터, 문자열을 깊게 비교합니다.

경계

  • =는 수만 받으며 ==, !=는 구조적 별칭입니다.
  • 프로시저 동등성은 본문을 구조적으로 비교하지 않습니다.