>>14
items is a function that loads some data from a file and returns IO [String], the >>= kind of removes the IO. split splits all the strings in items at tabs, and concatMap concatenates every element into a list. return kind of adds IO to the result and >>= removes it again ;) mapM_ putStrLn just prints out every item in the result and returns IO () or in other words nothing.
It's got to be possible to remove the last >>= and return, but I'm lazy, and this was just some testing code.