v9.0.0
Breaking changes:
-
Update project and deps to PureScript v0.15.0 (#160 by @JordanMartinez)
-
Drop deprecated
MonadZeroinstance (#160 by @JordanMartinez) -
New optimized internals.
ParserTnow has a more efficient representation,
resulting in (up to) 20x performance improvement. In addition to the performance,
all parser execution is always stack-safe, even monadically, obviating the need
to run parsers withTrampolineas the base Monad or to explicitly useMonadRec.Code that was parametric over the underlying Monad no longer needs to propagate a
Monad constraint.Code that constructs parsers via the underlying representation will need to be updated,
but otherwise the interface is unchanged and parsers should just enjoy the speed boost.(#154 by @natefaubion)
-
Make
<??>right-associative (#164 by @JordanMartinez) -
Drop
<?>and<~?>prec from 3 to 4 (#163, #164 by @JordanMartinez)<|>was made right associative. Decreasing these two operators
prevents a compiler error (i.e.MixedAssociativityError)
without causing issues with<$>. -
Rename module prefix from
Text.Parsing.ParsertoParsing(#169 by @jamesdbrock) -
Replace the
regexparser. (#170 by @jamesdbrock) -
Reorganize Combinators for #154 (#182 by @jamesdbrock)
-
Add the
indexfield toPosition. (#171 by @jamesdbrock) -
Move the parsers
whiteSpaceskipSpacesoneOfoneOfCodePointsnoneOfnoneOfCodePoints
fromParsing.StringtoParsing.String.Basic. (#183 by @jamesdbrock)
-
Change MonadState instance (#187 by jamesdbrock)
Users who stack a
ParserTon aStateTbase monad will call theMonadStatemembers directly likegetinstead of needing to dolift <<< get.To get the
ParserTinternal state, callgetParserTinstead ofget.
New features:
- Add the
anyTillprimitiveStringcombinator. (#186 by @jamesdbrock) - Add the
Parsing.String.Replacemodule, copied from
https://github.com/jamesdbrock/purescript-parsing-replace (#188 by @jamesdbrock)
Bugfixes:
- Improve correctness and speed of
numberandintDecimal. (#189 by @jamesdbrock)
Other improvements:
- Drop
mathdependency; update imports (#167 by @JordanMartinez)