Chr*_*ght 0 comparison scheme function
我将如何编写自己的eqv?还是相等?在计划?我会做一个cond并寻找符号吗?,数字?等,并返回相应的#t或#f?
根据R5RS,实现eqv?(当传递两个参数时)obj1和obj2要评估的最小规范#t是:
obj1并且obj2都是#t或两者兼而有之#f.(两个布尔文字如何评估相同的值是依赖于实现的).obj1并且obj2都是符号和(string=?
(symbol->string obj1)
(symbol->string obj2)) =)
=> #t
obj1并且obj2都是数字,在数值上是相等的(=),并且既可以是精确的,也可以是不精确的.obj1并且obj2都是字符,并且根据char=?程序是相同的字符.obj1和obj2是空列表.obj1并且obj2是表示商店中相同位置的对,向量或字符串(参见R5RS的3.4节).obj1并且obj2是位置标记相等的过程(lambda
表达式在概念上用存储位置标记.这意味着在Scheme实现之间有所不同.另见R5RS的4.1.4节).equal?可以通过eqv?递归地比较对,向量和字符串的内容,应用于eqv?其他对象(如数字和符号)来实现.