Here is a table showing the results of calling some equality predicates with the same pair of arguments.
x | y | eq | = | equal | std-equalp | std-set-equal-p |
'a | 'b | nil | nil | nil | nil | 'error |
'a | 'a | T | T | T | T | 'error |
2 | 2 | T | T | T | T | 'error |
2 | 2.0 | nil | T | nil | T | 'error |
'(a . b) | '(a . b) | T | T | T | T | 'error |
"Franz" | "Franz" | T | T | T | T | 'error |
"Franz" | "franz" | nil | nil | nil | T | 'error |
(cons 'a 'b) | (cons 'a 'b) | nil | nil | T | T | 'error |
'(0 0 1) | '(0 0 1.001) | nil | nil | nil | T | nil |
'(a b) | '(b a) | nil | nil | nil | T | T |