WIP: Replace Parsec with Megaparsec #289

Closed
wants to merge 1 commit into
from

Projects

None yet

4 participants

@rasendubi

This still a work in progress and doesn't compile. The main reason is csv package ParseError from Parsec which is a distinct type from ParseError from Megaparsec.

@simonmichael
Owner

@rasendubi, thanks for this - I'll be looking at it after next release.

Today's megaparsec release makes it compatible with GHC 7.6, which is good. Adopting it would mean hledger no longer builds with GHC 7.4, which is a pity but probably acceptable now.

@davelab6

Can this be closed?

@simonmichael
Owner

I'd like to get it completed and merged. If no one else does, I'll work on it as soon as open bugs are cleared.

@cocreature
Collaborator

FYI I’ve picked this up and hope to have it finished by the end of next week.

@cocreature cocreature added a commit to cocreature/hledger that referenced this pull request Jul 10, 2016
@cocreature cocreature Replace Parsec with Megaparsec (see #289)
This builds upon PR #289 by @rasendubi
a1ea9f4
@simonmichael simonmichael removed the A WISH label Jul 17, 2016
@simonmichael
Owner

Continued at #366, closing this one.

@cocreature cocreature added a commit to cocreature/hledger that referenced this pull request Jul 29, 2016
@cocreature cocreature Replace Parsec with Megaparsec (see #289)
This builds upon PR #289 by @rasendubi
bfa40da
@simonmichael simonmichael added a commit that referenced this pull request Jul 29, 2016
@cocreature @simonmichael cocreature + Replace Parsec with Megaparsec (see #289) (#366)
* Replace Parsec with Megaparsec (see #289)

This builds upon PR #289 by @rasendubi

* Revert renaming of parseWithState to parseWithCtx

* Fix doctests

* Update for Megaparsec 5

* Specialize parser to improve performance

* Pretty print errors

* Swap StateT and ParsecT

This is necessary to get the correct backtracking behavior, i.e. discard
state changes if the parsing fails.
4141067
@mstksg mstksg added a commit to mstksg/hledger that referenced this pull request Feb 3, 2017
@cocreature @mstksg cocreature + mstksg Replace Parsec with Megaparsec (see #289) (#366)
* Replace Parsec with Megaparsec (see #289)

This builds upon PR #289 by @rasendubi

* Revert renaming of parseWithState to parseWithCtx

* Fix doctests

* Update for Megaparsec 5

* Specialize parser to improve performance

* Pretty print errors

* Swap StateT and ParsecT

This is necessary to get the correct backtracking behavior, i.e. discard
state changes if the parsing fails.
291b5a5
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment