Sometimes you want to check the condition at the end and not the beginning. ``` rust do { do_work(); } while condition ``` These substitutes are less than ideal: ``` rust do_work(); while condition { do_work(); } loop { do_work(); if !condition { break } } ``` A `do while` loop would be nice in these cases.