Jay, coercions aka casts in our world are compound words with -> in between them. Why do you need a new name?
(There is an inconsistency in their behavior. To wit Welcome to Racket v5.0.99.4. > (integer->char 1000000000000000) integer->char: expects argument of type <exact integer in [0,#x10FFFF], not in [#xD800,#xDFFF]>; given 1000000000000000 === context === /Users/matthias/plt/collects/racket/private/misc.rkt:78:7 > (string->number "a10") #f But that is a historical problem.) ;; --- I am also reluctant to throw contracts at dynamic places. Contract boundaries should be syntactically distinct, e.g., module boundaries or define/contract. ;; --- I think you're really just checking an assertion. So perhaps you want to go with /a as a suffix. -- Matthias _________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/dev