Haskell Attoparsec无限循环

时间:2018-06-29 03:17:53

标签: haskell attoparsec

代码基于<%= user.projects.length %> ,当我使用Haskell Attoparsec时,它为我提供了parseOnly pString "v"的正确答案。

当我使用指令Right (DontNeedTrim, "v")时,它似乎掉入了parseOnly (many' pString) "v"中,并最终由于堆栈溢出而失败。

infinite loop

1 个答案:

答案 0 :(得分:3)

pString中的第二个替代方案接受空字符串:many' pChar >>= \s -> return (...)。因此,many' pString一直无限制地使用空字符串。