Return a comparator which bundles the type-test, equality, compare, and hash procedures provided. As a convenience, the following additional values are accepted:
#t: a type-test procedure that accepts
any arguments is provided.
#t: an equality predicate is provided
that returns #t if and only if compare returns 0.
#f, a procedure is provided that
signals an error on application. The predicates
comparator-comparison-procedure? and/or
comparator-hash-function?, respectively, will return #f in
these cases.