Common Lisp中MEMBER、FIND、POSITION的默认测试在规范何处定义?
Common Lisp 序列函数默认测试规则官方说明
核心结论
MEMBER、FIND、POSITION三个函数的默认比较测试函数确实是EQL,相关规则明确写在Common Lisp HyperSpec对应函数的定义条目内,不属于你遗漏的规范内容。
规范出处说明
Common Lisp HyperSpec是ANSI Common Lisp标准的官方超文本呈现版本,上述三个函数的参数定义部分都明确标注了:test关键字参数的默认值:
MEMBER函数的参数说明中,:test的默认值为#'eqlFIND函数作为标准序列检索函数,:test参数默认值标注为#'eqlPOSITION函数的参数定义中,:test的默认值同样为#'eql
额外说明:ANSI Common Lisp标准有统一约定,所有接收:test关键字参数的标准库函数,如无特殊单独说明,默认测试函数均为EQL,该规则也可作为通用参考。
内容的提问来源于stack exchange,提问作者Robert Dodier
相关产品推荐
相关产品推荐

