[Haskell-beginners] Lens and imperative programming