#lang typed/racket (provide current-date string->date date->string) (require (only-in typed/racket/date current-date)) (require (rename-in (only-in typed/srfi/19 string->date date->string date?) [string->date string->Date] [date->string Date->string] [date? Date?])) (: string->date (-> String String date)) (define (string->date str fmt) (assert (string->Date str fmt) date?)) (: date->string (->* (date) (String) String)) (define (date->string d [f "~c"]) (Date->string (assert d Date?) f))