我想知道在OCaml中是否为布尔值定义了运算符<
和>
?我有一个通用函数来排序列表,这应该适用于布尔列表。关于如何使用布尔列表进行排序,我感到很困惑?
答案 0 :(得分:7)
为函数类型以外的所有类型定义了OCaml <
和>
运算符。
对于布尔值,false小于true。
这些运算符在Pervasives模块中定义。这是关键文档:
这些函数与整数,字符,字符串,字节序列和浮点数的通常排序一致,并将它们扩展为所有类型的总排序。排序与(=)兼容。与(=)的情况一样,通过内容比较可变结构。功能值之间的比较提高了
Invalid_argument
。循环结构之间的比较可能不会终止。