哈斯克尔:一些和许多[重复]。

问题描述 投票:11回答:1

什么是 somemanyControl.Applicative.Alternative 好用吗?如果我写的东西像 some $ Just 42貌似会造成无限递归,似乎不是很有用...。

haskell applicative combinators haskell-alternative some-and-many
1个回答
11
投票

它们作为解析器组合器使用时是有意义的。

some 意味着解析器被尽可能多次应用,但至少一次。

many 类似,但也允许不进行解析。return摄取 [] 在这种情况下,而不是失败。

在这种情况下 Maybe, Just ... 从不 "失败",因此你的解析器 some $ Just 42 循环。

© www.soinside.com 2019 - 2024. All rights reserved.