open datetime random monad io loop = loop' 1 where loop' n t = do dt <- datetime.now seed <- return <| toInt <| (ticks <| dt) * n r <- return $ rnd seed 0 19 putStrLn (show r) if r <> t then loop' (n + 1) t else return () loop 10 ::: IO