String,ByteString,Textの速度比較を行うために、wc -lを作ってみました。 用意したコードは下記の通りです。 mywc_text.hs {-# LANGUAGE OverloadedStrings #-} import Control.Applicative ((<$>)) import qualified Data.Text.Lazy as LazyT import qualified Data.Text.Lazy.IO as LazyTI import System.Environment (getArgs) import qualified System.IO as SI main :: IO () main = do fp <- getArgs case fp of [] -> p LazyTI.getContents [f] -> SI.withFile f