Commits

Author Commit Message Labels Comments Date
Bryan O'Sullivan
Added tag 0.10.3.0 for changeset 030191aa39c9
Bryan O'Sullivan
Fix build error with bytestring 0.10
Tags
0.10.3.0
Bryan O'Sullivan
Bump version to 0.10.3.0
Bryan O'Sullivan
Merge pull request #33 from sol/update-dot-ghci Add -itests to .ghci, so that it is more convenient to run the tests
solirc
Add -itests to .ghci, so that it is more convenient to run the tests
Bryan O'Sullivan
Fix build problem on older GHC
tibbe
Fix exponential compilation times due to inlining Always inlining the success continuation helps performance but explodes the code size so that compiling even small examples such as calling anyWord8 16 times in a row slows to a crawl. Fixes #38
Bryan O'Sullivan
Merge pull request #30 from sol/use-equational-constraints Use equational constraints for IsString instances
solirc
Simplify example
solirc
Use equational constraints for IsString instances This helps with type checking. Here is an example: "foo" *> "bar" :: Parser Text This code did not type check before, because we had an `IsString` instance for `Parser Text`, but all that the type checker can infer about "foo" is that it is of type `Parser a`. The instance I added is now for `Parser a` instead, but we also constrain the type of `a` to `Text`. With this the above code does n…
Bryan O'Sullivan
Merge pull request #36 from tibbe/scan Add test for scan
tibbe
Add test for scan
Bryan O'Sullivan
Merge pull request #35 from tibbe/scan Optimize scan for short strings
tibbe
More scan benchmarks
tibbe
Even cheaper IO
tibbe
Optimize scan
tibbe
Add scan benchmark
Bryan O'Sullivan
Use MonadPlus and liftM2' for strict combinators
Bryan O'Sullivan
Merge pull request #29 from tibbe/strict-combinators Strict versions of list-producing combinators
tibbe
Strict versions of list-producing combinators These allow programmers to avoid space leaks, due to thunks of parsers building up in the returned list.
Bryan O'Sullivan
Merge pull request #32 from sol/add-gitignore Add .gitignore
solirc
Add .gitignore
tibbe
Fix Int overflow in lengthAtLeast In addition, the prior check assumed that the length was in bytes, not Word16s, which made it too conservative.
Bryan O'Sullivan
Don't rebox a few values
Bryan O'Sullivan
Merge pull request #28 from tibbe/optimize Several performance improvements
tibbe
Add bounds-merging benchmark
tibbe
Document optimizations in ensure
tibbe
Reduce code bloat due to inlining ensure Move the uncommonly used code that fetches more data into its own function that doesn't get inlined.
tibbe
Several performance improvements * Ensure the bounds check gets inlined by making ensure non-recursive so it can be inlined. * Avoid creating an extra closure in the common case by inlining the success continuation in ensure. * Optimize lengths check on Text values by using an O(1) conservative check before the exact O(n) check. * Make sure functions that take a high-order predicate argument get inlined to redu…
tibbe
Add a benchmark section to the Cabal file
  1. Prev
  2. Next