(define-record-type reinitializer :reinitializer (make-reinitializer thunk) reinitializer? (thunk reinitializer-thunk)) (define-record-discloser :reinitializer (lambda (r) (list 'reinitializer (reinitializer-thunk r)))) (define-record-resumer :reinitializer (lambda (r) ((reinitializer-thunk r))))