instance Show Char の実装において、エスケープの処理が未実装
instance Show Char where
-- todo: escape
show c = ['\'', c, '\'']
showList cs = (:) '"' . showl cs
where -- showl "" = (:) '"'
showl [] = (:) '"'
-- showl ('"':cs) = (++) "\\\"" . showl cs
showl (c:cs) = showLitChar c . showl cs
-- todo: should convert to printable characters
showLitChar c = (++) [c]