mrkkrp
f87276dcfb
Whims
...
[skip ci]
2017-06-29 20:25:37 +07:00
Roman Cheplyaka
0919338c4b
Add a MonadFix ParsecT instance ( #225 )
2017-06-29 20:23:03 +07:00
Mark Karpov
bda5fc822a
Move error construction helpers into the library ( #224 )
2017-06-29 18:33:47 +07:00
Mark Karpov
cec0987264
Separate trivial and fancy parse errors ( #223 )
2017-06-29 12:13:22 +07:00
Mark Karpov
5ed815fde4
Refactor pos and error modules ( #222 )
2017-06-28 14:08:26 +07:00
Mark Karpov
ca564d1113
Display control characters in strings nicely ( #221 )
2017-06-26 23:23:53 +07:00
mrkkrp
556a8333c3
Update the changelog (5.3.1)
...
[skip ci]
2017-06-26 17:14:35 +07:00
Mark Karpov
3ec48d12b9
Reorganize modules ( #217 )
2017-06-15 02:12:18 +07:00
Mark Karpov
9453b9eda4
Define ‘Semigroup’ and ‘Monoid’ for ‘ParsecT’ ( #203 )
2017-04-29 23:34:18 +03:00
Mark Karpov
15b645f08e
Add ‘getNextTokenPosition’ ( #202 )
2017-04-29 16:40:04 +03:00
Vladislav Zavialov
ae19a87cbf
Make () an error component ( #193 )
2017-03-05 17:06:47 +04:00
Mark Karpov
8ed11716e7
Add the ‘region’ combinator ( #192 )
...
Close #187 .
2017-03-03 03:45:38 +04:00
mrkkrp
e08851a99b
Mention dropping support for GHC 7.6 in the changelog
2017-02-07 17:52:52 +03:00
Mark Karpov
e809c56b45
Implement the ‘match’ combinator ( #184 )
2017-02-06 22:31:10 +04:00
Mark Karpov
cb978200d5
Fix subtle ‘indentBlock’ bugs, add new tests ( #182 )
2017-02-01 20:03:02 +04:00
Mark Karpov
b307ba2342
Implement counting of processed tokens ( #180 )
2017-01-31 15:17:54 +04:00
Mark Karpov
63dcf13c09
Performance tweaks ( #179 )
...
* Use default implementation of ‘many’
* Improve ‘count’ and ‘count'’
* Update the ‘CHANGELOG.md’ file
2017-01-29 19:39:21 +04:00
mrkkrp
5300e80c1c
Mention benchmark improvements in the ‘CHANGELOG.md’ file
2017-01-29 02:32:32 +03:00
mrkkrp
970a9ecc96
Update ‘CHANGELOG.md’ to mention #161
2016-12-28 01:19:20 +03:00
Mark Karpov
08d1ae8e61
Allow ‘many’ run parsers that do not consume input ( #160 )
2016-12-26 16:49:48 +04:00
Mark Karpov
dd2386aafc
Add ‘MonadParsec’ instance for ‘RWST’ ( #152 )
2016-11-21 19:18:27 +04:00
mrkkrp
fdc4f8071f
Version bump (5.1.2), update ‘CHANGELOG.md’
2016-10-06 22:46:30 +03:00
mrkkrp
d1649b63ad
Export ‘observing’ from ‘Text.Megaparsec’
2016-10-04 10:07:06 +03:00
mrkkrp
97257f3c7f
Add the ‘observing’ primitive
...
Close #145 .
2016-10-02 19:38:50 +03:00
mrkkrp
de4338ed2c
Mention the new ‘dbg’ function in ‘CHANGELOG.md’
2016-10-02 19:36:34 +03:00
mrkkrp
6772b88e93
Make ‘try’ truly backtrack parser state
...
Close #142 .
This seemingly has no effect on performance.
2016-09-27 09:41:23 +03:00
mrkkrp
979e7d504a
A minor update to ‘CHANGELOG.md’
2016-09-25 21:38:50 +03:00
mrkkrp
e8174d4700
Add some ‘Arbitrary’ instances
2016-09-04 16:44:24 +03:00
mrkkrp
5478537cf7
Eliminate the ‘old-tests’ test suite
2016-09-04 16:33:40 +03:00
mrkkrp
badec4a9df
Expose the ‘parseErrorTextPretty’ function
...
Close #137 .
2016-09-04 14:48:40 +03:00
mrkkrp
82994e45d4
Allow line comments end with end of input
...
Close #119 .
2016-08-13 20:00:49 +03:00
mrkkrp
33098be1ea
Define ‘displayException’ for ‘ParseError’
2016-07-29 21:27:52 +03:00
mrkkrp
033cbeb3fa
Update the ‘CHANGELOG.md’ file
2016-07-11 21:36:14 +03:00
mrkkrp
11d10c7d85
Mention performance improvements in ‘CHANGELOG.md’
2016-07-11 10:52:44 +03:00
mrkkrp
7d47a7b8f9
Derive more ‘Data’ and ‘Typeable’ instances
...
Close #112 . Derive ‘Data’ instance for ‘ParseError’, ‘Data’ and
‘Typeable’ instances for ‘SourcePos’.
2016-06-23 22:52:29 +03:00
mrkkrp
46132a8048
Update the ‘CHANGELOG.md’ file (line folds)
2016-05-11 00:25:24 +07:00
mrkkrp
9240896e6b
Update the ‘CHANGELOG.md’ file
2016-04-28 00:07:15 +07:00
mrkkrp
747993e0bb
Add ‘skipBlockCommentNested’ function
...
Close #96 .
2016-03-30 14:50:35 +06:00
mrkkrp
18d192ba70
Use ‘Scientific’ as target type for floats
...
Close #95 .
Here we introduce ‘scientific’ parser that can parse arbitrary big
numbers without error or memory overflow. ‘float’ still returns
‘Double’, but it's defined in terms of ‘scientific’ now. Since
‘Scientific’ type can reliably represent integer values as well as
floating point values, ‘number’ now returns ‘Scientific’ instead of
‘Either Integer Double’ (‘Integer’ or ‘Double’ can be extracted from
‘Scientific’ value anyway). This in turn makes ‘signed’ parser more
natural and general, because we do not need ad-hoc ‘Signed’ type class
anymore.
2016-03-29 16:42:51 +06:00
mrkkrp
0b4abd81ae
Update the ‘CHANGELOG.md’ file
2016-03-28 21:23:23 +06:00
recursion-ninja
dccfc82152
Replace ‘String’ with ‘Foldable f => f Char’
...
The commit also deals with GHC 8 warnings about redundant constraints.
2016-03-11 15:52:55 +06:00
mrkkrp
b0124d1ea2
Remove ‘parseFromFile’ and ‘StorableStream’
...
Removed ‘parseFromFile’ and ‘StorableStream’ type-class that was
necessary for it. The reason for removal is that reading from file and
then parsing its contents is trivial for every instance of ‘Stream’ and
this function provides no way to use newer methods for running a parser,
such as ‘runParser'’. So, simply put, it adds little value and was
included in 4.x versions for compatibility purposes.
2016-02-22 19:52:57 +06:00
mrkkrp
30fcbb64ef
Fix the build for older GHCs
2016-02-19 17:01:08 +06:00
mrkkrp
5a68665a90
Change collection of constraints for ‘MonadParsec’
...
Collection of constraints changed from ‘Alternative m, Monad m, Stream s
t’ to ‘MonadPlus m, Stream s t’. This is done to make it easier to write
more abstract code with older GHC where such primitives as ‘guard’ are
defined for instances of ‘MonadPlus’, not ‘Alternative’.
2016-02-19 16:02:52 +06:00
mrkkrp
4c34c488cc
Remove ‘Enum’ instance of ‘Message’
...
This was Parsec's legacy that we should eliminate now. ‘Message’ does
not constitute enumeration, ‘toEnum’ was never properly defined for
it. The idea to use ‘fromEnum’ to determine type of ‘Message’ is also
ugly, for this purpose new functions ‘isUnexpected’, ‘isExpected’, and
‘isMessage’ are defined in ‘Text.Megaparsec.Error’.
2016-02-18 16:26:29 +06:00
mrkkrp
52b41d4992
Add the ‘eitherP’ combinator
...
Close #85 .
2016-02-18 14:46:55 +06:00
mrkkrp
4f5d73f230
Remove statement about performance
...
More recent benchmarks made after all changes show no considerable
difference. It's faster than Parsec for sure, so…
2016-02-18 13:22:38 +06:00
mrkkrp
3baa263eab
Auto-backtracking for ‘tokens’ and friends
2016-02-17 23:32:48 +06:00
mrkkrp
4c5aae7098
Update ‘CHANGELOG.md’ and ‘README.md’
2016-02-12 22:12:30 +06:00
mrkkrp
4ba5bd7df1
Update ‘CHANGELOG.md’ file
2016-02-07 19:58:41 +06:00