HeadHs

import System

defaultLines = 10

main = do args <- getArgs
          case args of
            []   -> doHead defaultLines =<< getContents
            args -> mapM_ (\a -> doHead defaultLines =<< readFile a) args

doHead :: Int -> String -> IO ()
doHead n = putStr . unlines . take n . lines