文字列っぽいライブラリの使い方に関するメモ。後でまとめるため。 コーディングの方法は、(ViewPatternを使わないとして)こんな風に変わる。ByteString も Text も IsString のインスタンスなので、OverloadedStrings を指定すると、文字列リテラルが使えることに注意。 {-# LANGUAGE OverloadedStrings #-} import Data.ByteString (ByteString) import qualified Data.ByteString as B import Data.ByteString.Char8 () import Data.Text (Text) import qualified Data.Text as T foo :: String -> Int foo "" = -1 foo "zoo" = -2