[Haskell-beginners] Circular programming