Это хороший тон
<~>-> ghci GHCi, version 8.10.5: https://www.haskell.org/ghc/ :? for help Loaded GHCi configuration from /home/player205/.ghc/ghci.conf λ> :{ > data Foo = Foo { name :: String, age :: Int } > deriving (Show, Read) > :} λ> let foo = Foo "Andrei" 19 λ> foo Foo {name = "Andrei", age = 19} λ> read (show foo) *** Exception: Prelude.read: no parse λ> :D:D:D:D:D
λ> data Foo = Foo { name :: String, age :: Int } deriving (Show, Read) λ> read (show $ Foo "Bob" 42) :: Foo Foo {name = "Bob", age = 42}
Тип результата read задефолтился в (), см. GHC defaulting rules
Обсуждают сегодня