>>> oneOf xs = Parser.satisfy (`Foldable.elem` xs)When performance matters a pattern matching predicate could be more efficient than a Foldable datatype:
let p x = case x of a -> True e -> True _ -> False in satisfy pGHC may use a binary search instead of linear search in the list. Alternatively, you can also use an array instead of list for storage and search.
>>> noneOf xs = Parser.satisfy (`Foldable.notElem` xs)