(dynamic-wind (lambda () (print* "before\n")) (lambda () (print* "within\n") (error 'boom)) (lambda () (print* "after\n")))