@@ -0,0 +1,14 @@
1+{-# LANGUAGE FlexibleContexts #-}
2+
3+import Control.Monad.IO.Class (liftIO)
4+import Control.Monad.Trans.Class (lift)
5+import Path.IO (listDir, getCurrentDir)
6+import Path (Path, Dir, reldir)
7+import Asyncly
8+
9+main = runAsyncly $ getCurrentDir >>= readdir
10+ where readdir d = do
11+ (ds, fs) <- lift $ listDir d
12+ liftIO $ mapM_ putStrLn $ map show fs ++ map show ds
13+ for ds readdir -- concurrent version
14+ -- each ds >>= readdir -- serial version