文档建议ReadPrec
是解析器比ReadS
更有效的表示形式,并说它是ghc用来定义派生Read
实例的表示。但是,ghc 给出的错误是,当我尝试使用它实现Read
时,该方法不可见。
instance Read PosTag where
readPrec = mconcat . map posTagFromChar <$> lift (many (satisfy (`elem` "nva")))
http://hackage.haskell.org/package/base-4.12.0.0/docs/Text-Read.html
显然readPrec
不是从Prelude
导出的...我不得不进口Text.Read
.感谢左边的提示。