1 Although I do not show it in this paper, translations which integrate arbitrary user code can cause this idiom to become unsafe; Converge provides a relatively simple work around for such cases.