private/util.ss
#lang scheme
(provide/contract [exact-round (-> rational? any/c)]
                  [exact-floor (-> rational? any/c)]
                  [exact-ceiling (-> rational? any/c)]
                  [exact-truncate (-> rational? any/c)])

(define exact-round (compose inexact->exact round))
(define exact-floor (compose inexact->exact floor))
(define exact-ceiling (compose inexact->exact ceiling))
(define exact-truncate (compose inexact->exact truncate))