You're absolutely right, I chose a simple example because it's one I expect most people have seen in one language or another. A better one would be rewriting a combinator based parser (e.g. one written in Parsec) into an imperative one.
yes, it doesent matter often in the end, cause even bad code must wait for worser memory, but still..