packages feed

MicroHs-0.15.0.0: tests/Fix.hs

module Fix where
import System.IO

main :: IO ()
main = do
  r <- fmap (take 10) . fixIO $
        \ fibs -> putStrLn "computing fibs" >> return (1 : 1 : zipWith (+) fibs (tail fibs))
  print r

  rec { a <- return (b+1)
      ; b <- return 2 }
  print (a, b)

  x <- mdo
         a <- return (b+1)
         b <- return (c+1)
         let c = d+1
         d <- return 42
         return (a+b)
  print x