import Text.CSV.ByteString import Data.Maybe import Data.List import qualified Data.ByteString as S main = do r <- parseCSV `fmap` S.getContents case r of Nothing -> return () Just csv -> mapM_ S.putStrLn $ nub [ x | (x:_) <- csv ]