0

我有一个课程要求我编写一个新函数 parse:: String -> Stm。Parsec 已经有一个 parse 函数,所以我应该导入合格的 parsec 以便 parse 返回我的包装函数。wrapper 函数需要将输入字符串解析为 Parsec 的 parse 函数,并从返回的 monad 中解包结果。这是我的包装函数的代码。如何确保在调用 parse 时,它​​返回我的包装函数。

parseString :: String -> Stm
parseString str =
   case parse procParser "" str of
     Left e  -> error $ show e
     Right r -> r
4

1 回答 1

0

完全按照说明进行操作:

import qualified Text.Parsec

parse :: String -> Stm
parse str =
  case Text.Parsec.parse procParser "" str of
    Left e  -> error $ show e
    Right r -> r
于 2017-05-02T12:07:10.373 回答