Emacs Lisp 中的 `indistinguishable` 是什么意思?
What's the meaning of `indistinguishable` in Emacs Lisp?
我正在阅读名为 eql
:
的 Emacs Lisp 函数的文档
Return t if the two args are eq or are indistinguishable numbers.
这里的indistinguishable
是什么意思?我一直在搜索文档,但没有找到解释。
eq
谓词 returns t
仅当比较相同的对象时。但是不能保证比较相等的两个值是同一个对象;甚至不能保证具有相同值的两个文字是同一个对象。因此,(eq 1 1)
可能会或可能不会计算为 t
。对于数字类型 eql
比较值,因此 (eql 1 1)
将始终计算为 t
。但是,eql
有点微妙:(eql 1 1.0)
将计算为 'nil
,因为 1
和 1.0
不是 无法区分的 ,即它们不共享同一类型。因此,在引用的上下文中,无法区分意味着操作数具有相同的类型和相同的值。
我正在阅读名为 eql
:
Return t if the two args are eq or are indistinguishable numbers.
这里的indistinguishable
是什么意思?我一直在搜索文档,但没有找到解释。
eq
谓词 returns t
仅当比较相同的对象时。但是不能保证比较相等的两个值是同一个对象;甚至不能保证具有相同值的两个文字是同一个对象。因此,(eq 1 1)
可能会或可能不会计算为 t
。对于数字类型 eql
比较值,因此 (eql 1 1)
将始终计算为 t
。但是,eql
有点微妙:(eql 1 1.0)
将计算为 'nil
,因为 1
和 1.0
不是 无法区分的 ,即它们不共享同一类型。因此,在引用的上下文中,无法区分意味着操作数具有相同的类型和相同的值。