Почему базовый пакет Haskell определяет класс IsString
, чтобы преобразовать значение String
в значение "как-строка", а не определять обратное преобразование, от значения "как-строка" до String
Класс должен быть определен как:
class IsString a where
fromString :: String -> a
toString :: a -> String
ref: http://hackage.haskell.org/packages/archive/base/4.4.0.0/doc/html/Data-String.html