[Hackage] #531: Text.Parsec.Combinators.notFollowedBy too restrictive

#531: Text.Parsec.Combinators.notFollowedBy too restrictive ----------------------------+----------------------------------------------- Reporter: nzeh | Owner: Type: enhancement | Status: new Priority: normal | Milestone: _|_ Component: Cabal library | Version: 1.6.0.1 Severity: minor | Keywords: Difficulty: unknown | Ghcversion: Platform: | ----------------------------+----------------------------------------------- Say, you want to write something like {{{ aParser :: Parser String aParser = many1 $ noneOf "a" <|> ( char 'a' >> notFollowedBy $ string "rrgh" >> return 'a' ) }}} This fails because, according to the type signature of notFollowedBy, since the parser parses a stream characters, the parser given to notFollowedBy must have return type Char, which it doesn't. The same happens for something a little more meaningful such as {{{ nonFinalA :: Parser () nonFinalA = char 'a' >> notFollowedBy eof }}} because eof has return type (). This is a request to change the type signature of notFollowedBy to accept a parser with arbitrary return type. Rationale: * The return type is ignored anyway. * The return type has only a loose connection with what part of the input stream the parser consumes. -- Ticket URL: http://hackage.haskell.org/trac/hackage/ticket/531 Hackage http://haskell.org/cabal/ Hackage: Cabal and related projects

#531: Text.Parsec.Combinators.notFollowedBy too restrictive ----------------------------+----------------------------------------------- Reporter: nzeh | Owner: Type: enhancement | Status: closed Priority: normal | Milestone: _|_ Component: Cabal library | Version: 1.6.0.1 Severity: minor | Resolution: invalid Keywords: | Difficulty: unknown Ghcversion: | Platform: ----------------------------+----------------------------------------------- Changes (by duncan): * status: new => closed * resolution: => invalid Comment: Replying to [ticket:531 nzeh]:
Say, you want to write something like
Looks like you've opened this ticket in the wrong trac. I'm not quite sure where one should report bugs in parsec but it's certainly not here. Sorry. The parsec.cabal file lists a maintainer, you could try emailing them. -- Ticket URL: http://hackage.haskell.org/trac/hackage/ticket/531#comment:1 Hackage http://haskell.org/cabal/ Hackage: Cabal and related projects
participants (1)
-
Hackage