syndicate-2017/prospect/hash-order.rkt

18 lines
391 B
Racket
Raw Normal View History

2015-08-19 00:14:31 +00:00
#lang racket/base
(provide hash-order)
(require data/order)
(require racket/contract)
(define hash-order
(order 'hash-order
any/c
eq?
(lambda (a b)
(define a-code (eq-hash-code a))
(define b-code (eq-hash-code b))
(or (< a-code b-code)
(and (= a-code b-code)
(eq? (datum-order a b) '<))))))