packages feed

idris-0.9.10: test/test013/test013.idr

module Main

forLoop : List a -> (a -> IO ()) -> IO ()
forLoop [] f = return ()
forLoop (x :: xs) f = do f x
                         forLoop xs f

syntax for {x} "in" [xs] ":" [body] = forLoop xs (\x => body)

main : IO ()
main = do putStrLn "Counting:"
          for x in [1..10]:
              putStrLn $ "Number " ++ show x
          putStrLn "Done!"