packages/text.git
6 years agoUse unsafeDupablePerformIO where possible
Johan Tibell [Mon, 25 Feb 2013 01:58:48 +0000 (17:58 -0800)] 
Use unsafeDupablePerformIO where possible

unsafeDupablePerformIO is much faster than unsafePerformIO and can be
used safely as long as the underlying operation is pure and we're fine
risking duplicating it in a multi-core scenario. unsafeDupablePerformIO
helps performance a lot on short string where the overhead of
unsafePerformIO dominates.

Closes #41.

6 years agoAdd benchmarks for decodeUtf8'
Johan Tibell [Mon, 25 Feb 2013 01:54:34 +0000 (17:54 -0800)] 
Add benchmarks for decodeUtf8'

Also make it possible to run the Pure benchmark with a very short input
string. This lets us test the constant overheads in functions, such as
the one added by unsafePerformIO in decodeUtf8.

6 years agoDocument internal units and representation
Bryan O'Sullivan [Tue, 15 Jan 2013 05:22:00 +0000 (21:22 -0800)] 
Document internal units and representation

6 years agoTry to sort out benchmark build with GHC 7.6
Bryan O'Sullivan [Tue, 15 Jan 2013 04:43:23 +0000 (20:43 -0800)] 
Try to sort out benchmark build with GHC 7.6

6 years agoFix benchmarks with older bytestring'
Bryan O'Sullivan [Tue, 15 Jan 2013 04:23:45 +0000 (20:23 -0800)] 
Fix benchmarks with older bytestring'

6 years agoFix test build with older bytestring
Bryan O'Sullivan [Tue, 15 Jan 2013 04:12:18 +0000 (20:12 -0800)] 
Fix test build with older bytestring

--HG--
extra : amend_source : d349d2b76eda5d23dbefd8137c4456e854628b4c

6 years agoEnsure that an encoding error handler's result is safe
Bryan O'Sullivan [Tue, 15 Jan 2013 03:20:01 +0000 (19:20 -0800)] 
Ensure that an encoding error handler's result is safe

--HG--
extra : amend_source : c4036e7a53a663f37b2379806739b48c65a9c014

6 years agoGet in-place tests working "properly"
Bryan O'Sullivan [Tue, 15 Jan 2013 03:18:24 +0000 (19:18 -0800)] 
Get in-place tests working "properly"

7 years agoMerge
Bryan O'Sullivan [Mon, 3 Dec 2012 18:23:49 +0000 (10:23 -0800)] 
Merge

7 years agoMerge pull request #18 from hvr/pull-req-16
Bryan O'Sullivan [Mon, 3 Dec 2012 18:22:11 +0000 (10:22 -0800)] 
Merge pull request #18 from hvr/pull-req-16

Add new `Data.Text.Encoding.decodeLatin1` ISO-8859-1 decoding function

7 years agoMerge pull request #36 from deian/master
Bryan O'Sullivan [Mon, 3 Dec 2012 18:19:22 +0000 (10:19 -0800)] 
Merge pull request #36 from deian/master

Mark top-level modules Trustworthy

7 years agoTurn one error into a CAF
Bryan O'Sullivan [Wed, 24 Oct 2012 22:44:46 +0000 (15:44 -0700)] 
Turn one error into a CAF

7 years agoMake streaming cons strict in its first argument
Bryan O'Sullivan [Wed, 24 Oct 2012 20:55:54 +0000 (13:55 -0700)] 
Make streaming cons strict in its first argument

7 years agoDrop some more overhead from unstreamChunks
Bryan O'Sullivan [Wed, 24 Oct 2012 20:05:33 +0000 (13:05 -0700)] 
Drop some more overhead from unstreamChunks

7 years agoFirst of many CAFs to be NOINLINEd :-(
Bryan O'Sullivan [Wed, 24 Oct 2012 20:03:40 +0000 (13:03 -0700)] 
First of many CAFs to be NOINLINEd :-(

7 years agoWhen unstreaming, we know the first chunk is not empty
Bryan O'Sullivan [Wed, 24 Oct 2012 19:17:45 +0000 (12:17 -0700)] 
When unstreaming, we know the first chunk is not empty

7 years agoLazy Text: reduce memory allocation during unstreaming
Bryan O'Sullivan [Wed, 24 Oct 2012 19:01:32 +0000 (12:01 -0700)] 
Lazy Text: reduce memory allocation during unstreaming

7 years agoA few simple bang patterns help performance a little
Bryan O'Sullivan [Wed, 24 Oct 2012 18:49:40 +0000 (11:49 -0700)] 
A few simple bang patterns help performance a little

7 years agoMerge
Bryan O'Sullivan [Sun, 30 Sep 2012 02:52:29 +0000 (19:52 -0700)] 
Merge

7 years agoMake a variable local
Bryan O'Sullivan [Sun, 30 Sep 2012 02:52:15 +0000 (19:52 -0700)] 
Make a variable local

7 years agoOptimize latin1-to-UTF16 C-implementation by using 32-bit loads
Herbert Valerio Riedel [Sun, 23 Sep 2012 15:35:26 +0000 (17:35 +0200)] 
Optimize latin1-to-UTF16 C-implementation by using 32-bit loads

7 years agoAdd `Data.Text.Lazy.Encoding.decodeLatin1` ISO-8859-1 decoding function
Herbert Valerio Riedel [Sun, 23 Sep 2012 15:37:16 +0000 (17:37 +0200)] 
Add `Data.Text.Lazy.Encoding.decodeLatin1` ISO-8859-1 decoding function

See 7c06306bd5b7382cb101f8632b5a1fc50697fe94 for more information

7 years agoAdd new `Data.Text.Encoding.decodeLatin1` ISO-8859-1 decoding function
Herbert Valerio Riedel [Sun, 23 Sep 2012 15:36:30 +0000 (17:36 +0200)] 
Add new `Data.Text.Encoding.decodeLatin1` ISO-8859-1 decoding function

This has about an order of magnitude lower runtime and/or call-overhead as
compared to the more generic `text-icu` approach, e.g. according to criterion
with GHC 7.4.1 on Linux/x86_64:

 * 12 times faster for empty input strings,
 * 6 times faster for 16-byte strings, and
 * 3 times faster for 1024-byte strings.

`decodeLatin1` is also faster compared to using `decodeUtf8` for plain ASCII:

 * 2 times faster for 16-byte input strings,
 * ~40% faster for 1024-byte strings.

7 years agonits
Deian Stefan [Sun, 9 Sep 2012 21:03:04 +0000 (14:03 -0700)] 
nits

7 years agokill PatternSignatures warning
Deian Stefan [Mon, 27 Aug 2012 20:55:55 +0000 (13:55 -0700)] 
kill PatternSignatures warning

7 years agoTop-level interfaces are safe, marked trustworthy
Deian Stefan [Mon, 27 Aug 2012 20:50:34 +0000 (13:50 -0700)] 
Top-level interfaces are safe, marked trustworthy

7 years agoFix documentation for hGetChunk
Bryan O'Sullivan [Sun, 9 Sep 2012 06:08:13 +0000 (23:08 -0700)] 
Fix documentation for hGetChunk

7 years agoHoist out duplicated catchError definitions :-(
Bryan O'Sullivan [Sun, 9 Sep 2012 06:05:22 +0000 (23:05 -0700)] 
Hoist out duplicated catchError definitions :-(

7 years agoMerge
Bryan O'Sullivan [Sun, 9 Sep 2012 05:51:58 +0000 (22:51 -0700)] 
Merge

7 years agoRedefine pack to fuse better
Bryan O'Sullivan [Sun, 19 Aug 2012 15:49:43 +0000 (08:49 -0700)] 
Redefine pack to fuse better

7 years agoAdded tag 0.11.2.3 for changeset 4297307ebc11
Bryan O'Sullivan [Wed, 15 Aug 2012 20:52:35 +0000 (13:52 -0700)] 
Added tag 0.11.2.3 for changeset 4297307ebc11

7 years agoBump version to 0.11.2.3
Bryan O'Sullivan [Tue, 14 Aug 2012 22:38:54 +0000 (15:38 -0700)] 
Bump version to 0.11.2.3

7 years agoMerge
Bryan O'Sullivan [Tue, 14 Aug 2012 22:33:28 +0000 (15:33 -0700)] 
Merge

--HG--
rename : tests/tests/src/Data/Text/Tests/Properties.hs => tests/Tests/Properties.hs

7 years agoKill off warnings from GHC 7.6
Bryan O'Sullivan [Tue, 14 Aug 2012 22:32:58 +0000 (15:32 -0700)] 
Kill off warnings from GHC 7.6

7 years agoKill the upper bound on integer-gmp
Bryan O'Sullivan [Tue, 14 Aug 2012 22:31:01 +0000 (15:31 -0700)] 
Kill the upper bound on integer-gmp

7 years agoAdapt for ghc-7.6
Simon Hengel [Tue, 14 Aug 2012 07:13:42 +0000 (09:13 +0200)] 
Adapt for ghc-7.6

7 years agoInitial cut at cross-language benchmarks
Bryan O'Sullivan [Mon, 13 Aug 2012 17:27:37 +0000 (10:27 -0700)] 
Initial cut at cross-language benchmarks

7 years agoIgnore cabal-dev directories.
Bryan O'Sullivan [Mon, 13 Aug 2012 17:27:06 +0000 (10:27 -0700)] 
Ignore cabal-dev directories.

7 years agoDrop some redundant imports.
Bryan O'Sullivan [Mon, 13 Aug 2012 17:19:03 +0000 (10:19 -0700)] 
Drop some redundant imports.

7 years agoEnsure that GHC's CPR optimization fires.
Bryan O'Sullivan [Mon, 13 Aug 2012 17:08:09 +0000 (10:08 -0700)] 
Ensure that GHC's CPR optimization fires.

Prior to this change, we definitely allocated the result on the
heap when building the little faux-bloom-filter.

7 years agoOops
Bryan O'Sullivan [Wed, 4 Jul 2012 17:21:11 +0000 (10:21 -0700)] 
Oops

7 years agoIgnore tests/coverage
Bryan O'Sullivan [Fri, 29 Jun 2012 17:43:56 +0000 (10:43 -0700)] 
Ignore tests/coverage

7 years agoKill off more cabal bit rot
Bryan O'Sullivan [Fri, 29 Jun 2012 17:43:48 +0000 (10:43 -0700)] 
Kill off more cabal bit rot

7 years agoSimplify test counting
Bryan O'Sullivan [Fri, 29 Jun 2012 17:43:34 +0000 (10:43 -0700)] 
Simplify test counting

7 years agoEnsure that cabal sdist actually works
Bryan O'Sullivan [Fri, 29 Jun 2012 16:14:11 +0000 (09:14 -0700)] 
Ensure that cabal sdist actually works

7 years agoIgnore .tix files
Bryan O'Sullivan [Fri, 29 Jun 2012 16:09:59 +0000 (09:09 -0700)] 
Ignore .tix files

7 years agoDrop trailing whitespace
Bryan O'Sullivan [Fri, 29 Jun 2012 16:09:35 +0000 (09:09 -0700)] 
Drop trailing whitespace

7 years agoSort modules
Bryan O'Sullivan [Fri, 29 Jun 2012 16:06:20 +0000 (09:06 -0700)] 
Sort modules

7 years agoAdd missing file
Bryan O'Sullivan [Fri, 29 Jun 2012 16:00:54 +0000 (09:00 -0700)] 
Add missing file

7 years agoTest the RealFloat builders
Bryan O'Sullivan [Fri, 29 Jun 2012 15:56:40 +0000 (08:56 -0700)] 
Test the RealFloat builders

7 years agoTest builder rendering of numbers in all cases
Bryan O'Sullivan [Fri, 29 Jun 2012 06:20:55 +0000 (23:20 -0700)] 
Test builder rendering of numbers in all cases

7 years agoGet rendering of numbers working in all cases
Bryan O'Sullivan [Fri, 29 Jun 2012 06:20:38 +0000 (23:20 -0700)] 
Get rendering of numbers working in all cases

7 years agoAdd a test case for decimal rendering (issue 30)
Bryan O'Sullivan [Fri, 29 Jun 2012 04:43:36 +0000 (21:43 -0700)] 
Add a test case for decimal rendering (issue 30)

7 years agoUpdate names
Bryan O'Sullivan [Fri, 29 Jun 2012 04:30:05 +0000 (21:30 -0700)] 
Update names

7 years agoGet benchmarks going again
Bryan O'Sullivan [Fri, 29 Jun 2012 04:28:58 +0000 (21:28 -0700)] 
Get benchmarks going again

--HG--
rename : tests/README.markdown => tests-and-benchmarks.markdown

7 years agoReorganize tests subtree
Bryan O'Sullivan [Fri, 29 Jun 2012 04:16:57 +0000 (21:16 -0700)] 
Reorganize tests subtree

--HG--
rename : tests/tests/.ghci => tests/.ghci
rename : tests/tests/Makefile => tests/Makefile
rename : tests/tests/src/Data/Text/Tests.hs => tests/Tests.hs
rename : tests/tests/src/Data/Text/Tests/IO.hs => tests/Tests/IO.hs
rename : tests/tests/src/Data/Text/Tests/Properties.hs => tests/Tests/Properties.hs
rename : tests/tests/src/Data/Text/Tests/QuickCheckUtils.hs => tests/Tests/QuickCheckUtils.hs
rename : tests/tests/src/Data/Text/Tests/Regressions.hs => tests/Tests/Regressions.hs
rename : tests/tests/src/Data/Text/Tests/SlowFunctions.hs => tests/Tests/SlowFunctions.hs
rename : tests/tests/src/Data/Text/Tests/Utils.hs => tests/Tests/Utils.hs
rename : tests/tests/scripts/cover-stdio.sh => tests/scripts/cover-stdio.sh
rename : tests/tests/text-tests.cabal => tests/text-tests.cabal

7 years agoIgnore benchmark bits
Bryan O'Sullivan [Fri, 29 Jun 2012 04:08:38 +0000 (21:08 -0700)] 
Ignore benchmark bits

7 years agoMake the benchmarks subtree saner
Bryan O'Sullivan [Fri, 29 Jun 2012 04:06:15 +0000 (21:06 -0700)] 
Make the benchmarks subtree saner

--HG--
rename : tests/benchmarks/.gitignore => benchmarks/.gitignore
rename : tests/benchmarks/Setup.hs => benchmarks/Setup.hs
rename : tests/benchmarks/cbits/time_iconv.c => benchmarks/cbits/time_iconv.c
rename : tests/benchmarks/src/Data/Text/Benchmarks.hs => benchmarks/haskell/Benchmarks.hs
rename : tests/benchmarks/src/Data/Text/Benchmarks/Builder.hs => benchmarks/haskell/Benchmarks/Builder.hs
rename : tests/benchmarks/src/Data/Text/Benchmarks/DecodeUtf8.hs => benchmarks/haskell/Benchmarks/DecodeUtf8.hs
rename : tests/benchmarks/src/Data/Text/Benchmarks/EncodeUtf8.hs => benchmarks/haskell/Benchmarks/EncodeUtf8.hs
rename : tests/benchmarks/src/Data/Text/Benchmarks/Equality.hs => benchmarks/haskell/Benchmarks/Equality.hs
rename : tests/benchmarks/src/Data/Text/Benchmarks/FileRead.hs => benchmarks/haskell/Benchmarks/FileRead.hs
rename : tests/benchmarks/src/Data/Text/Benchmarks/FoldLines.hs => benchmarks/haskell/Benchmarks/FoldLines.hs
rename : tests/benchmarks/src/Data/Text/Benchmarks/Programs/BigTable.hs => benchmarks/haskell/Benchmarks/Programs/BigTable.hs
rename : tests/benchmarks/src/Data/Text/Benchmarks/Programs/Cut.hs => benchmarks/haskell/Benchmarks/Programs/Cut.hs
rename : tests/benchmarks/src/Data/Text/Benchmarks/Programs/Fold.hs => benchmarks/haskell/Benchmarks/Programs/Fold.hs
rename : tests/benchmarks/src/Data/Text/Benchmarks/Programs/Sort.hs => benchmarks/haskell/Benchmarks/Programs/Sort.hs
rename : tests/benchmarks/src/Data/Text/Benchmarks/Programs/StripTags.hs => benchmarks/haskell/Benchmarks/Programs/StripTags.hs
rename : tests/benchmarks/src/Data/Text/Benchmarks/Programs/Throughput.hs => benchmarks/haskell/Benchmarks/Programs/Throughput.hs
rename : tests/benchmarks/src/Data/Text/Benchmarks/Pure.hs => benchmarks/haskell/Benchmarks/Pure.hs
rename : tests/benchmarks/src/Data/Text/Benchmarks/ReadNumbers.hs => benchmarks/haskell/Benchmarks/ReadNumbers.hs
rename : tests/benchmarks/src/Data/Text/Benchmarks/Replace.hs => benchmarks/haskell/Benchmarks/Replace.hs
rename : tests/benchmarks/src/Data/Text/Benchmarks/Search.hs => benchmarks/haskell/Benchmarks/Search.hs
rename : tests/benchmarks/src/Data/Text/Benchmarks/Stream.hs => benchmarks/haskell/Benchmarks/Stream.hs
rename : tests/benchmarks/src/Data/Text/Benchmarks/WordFrequencies.hs => benchmarks/haskell/Benchmarks/WordFrequencies.hs
rename : tests/benchmarks/python/.gitignore => benchmarks/python/.gitignore
rename : tests/benchmarks/python/cut.py => benchmarks/python/cut.py
rename : tests/benchmarks/python/sort.py => benchmarks/python/sort.py
rename : tests/benchmarks/python/strip_tags.py => benchmarks/python/strip_tags.py
rename : tests/benchmarks/python/utils.py => benchmarks/python/utils.py
rename : tests/benchmarks/ruby/cut.rb => benchmarks/ruby/cut.rb
rename : tests/benchmarks/ruby/fold.rb => benchmarks/ruby/fold.rb
rename : tests/benchmarks/ruby/sort.rb => benchmarks/ruby/sort.rb
rename : tests/benchmarks/ruby/strip_tags.rb => benchmarks/ruby/strip_tags.rb
rename : tests/benchmarks/ruby/utils.rb => benchmarks/ruby/utils.rb
rename : tests/benchmarks/text-benchmarks.cabal => benchmarks/text-benchmarks.cabal

7 years agoTests compile and work with ghc 7.5 QuickCheck 2.5 (after loosening QuickCheck dep...
Mark Wright [Thu, 28 Jun 2012 03:51:33 +0000 (13:51 +1000)] 
Tests compile and work with ghc 7.5 QuickCheck 2.5 (after loosening QuickCheck dep in test-framework-quickcheck2)

7 years agoghc 7.5 removed catch from Prelude
Mark Wright [Thu, 28 Jun 2012 03:51:02 +0000 (13:51 +1000)] 
ghc 7.5 removed catch from Prelude

7 years agoUpdate test README
Bryan O'Sullivan [Sun, 24 Jun 2012 05:32:13 +0000 (22:32 -0700)] 
Update test README

7 years agoMerge
Bryan O'Sullivan [Sun, 24 Jun 2012 05:24:44 +0000 (22:24 -0700)] 
Merge

7 years agoSwitch decodeUtf8 to runText
Bryan O'Sullivan [Sun, 24 Jun 2012 04:32:44 +0000 (21:32 -0700)] 
Switch decodeUtf8 to runText

This improves performance by 10% on small strings, and reduces the
amount of memory allocated by 17%.

7 years agoSimplify the unstream code
Bryan O'Sullivan [Sun, 24 Jun 2012 04:22:50 +0000 (21:22 -0700)] 
Simplify the unstream code

7 years agounstream: choose a winner - the continuation
Bryan O'Sullivan [Tue, 19 Jun 2012 05:24:59 +0000 (01:24 -0400)] 
unstream: choose a winner - the continuation

For a simple benchmark filtering many very small strings, this
allocates 7.8% less memory and 2.4% less time than unstream in
0.11.2.1.  The difference slowly disappears for larger strings.

The "use a specialised pair" approach can't match the reduction in
memory use, and for reasons unknown to me, seems to be slower than
the code in 0.11.2.1.

7 years agounstream: Fine-tune the continuation handling
Bryan O'Sullivan [Tue, 19 Jun 2012 05:08:19 +0000 (01:08 -0400)] 
unstream: Fine-tune the continuation handling

7 years agoMerge
Bryan O'Sullivan [Tue, 19 Jun 2012 04:38:15 +0000 (00:38 -0400)] 
Merge

7 years agoMerge
Bryan O'Sullivan [Tue, 19 Jun 2012 04:38:05 +0000 (00:38 -0400)] 
Merge

7 years agoAnother try at improving Text generation.
Bryan O'Sullivan [Tue, 19 Jun 2012 04:20:02 +0000 (00:20 -0400)] 
Another try at improving Text generation.

7 years agoA small improvement in Text generation efficiency.
Bryan O'Sullivan [Sun, 17 Jun 2012 18:38:29 +0000 (11:38 -0700)] 
A small improvement in Text generation efficiency.

The specialised Run tuple avoids boxing and indirection for both
the MArray and Int parameters in the predecessor code.

I think I can do better, though.

7 years agoBump version to 0.11.2.2
Bryan O'Sullivan [Fri, 15 Jun 2012 23:51:45 +0000 (16:51 -0700)] 
Bump version to 0.11.2.2

7 years agoBump dependency on bytestring
Bryan O'Sullivan [Fri, 15 Jun 2012 23:39:51 +0000 (16:39 -0700)] 
Bump dependency on bytestring

7 years agoAdded tag 0.11.2.1 for changeset 78219784cf36
Bryan O'Sullivan [Thu, 17 May 2012 05:59:22 +0000 (22:59 -0700)] 
Added tag 0.11.2.1 for changeset 78219784cf36

7 years agoBump version to 0.11.2.1
Bryan O'Sullivan [Thu, 17 May 2012 05:59:15 +0000 (22:59 -0700)] 
Bump version to 0.11.2.1

7 years agoUse integer-simple if the integer-simple flag is set.
Thomas M. DuBuisson [Wed, 16 May 2012 17:51:35 +0000 (10:51 -0700)] 
Use integer-simple if the integer-simple flag is set.

7 years agoAdd hGetChunk
Jared Hance [Sun, 8 Apr 2012 22:44:13 +0000 (17:44 -0500)] 
Add hGetChunk

7 years agoAdded tag 0.11.2.0 for changeset 1d2c6fa9092c
Bryan O'Sullivan [Sun, 8 Apr 2012 05:39:21 +0000 (22:39 -0700)] 
Added tag 0.11.2.0 for changeset 1d2c6fa9092c

7 years agoBump version to 0.11.2.0, add release notes
Bryan O'Sullivan [Sun, 8 Apr 2012 05:39:18 +0000 (22:39 -0700)] 
Bump version to 0.11.2.0, add release notes

7 years agoExpand dependency on test-framework
Bryan O'Sullivan [Sun, 8 Apr 2012 05:16:56 +0000 (22:16 -0700)] 
Expand dependency on test-framework

7 years agoGet the tests working with GHC 7.0
Bryan O'Sullivan [Sun, 8 Apr 2012 05:03:35 +0000 (22:03 -0700)] 
Get the tests working with GHC 7.0

7 years agoBackport the fix for bug 19 to GHC < 7.2
Bryan O'Sullivan [Sun, 8 Apr 2012 04:50:50 +0000 (21:50 -0700)] 
Backport the fix for bug 19 to GHC < 7.2

7 years agoReduce the amount of code generated for string literals
Bryan O'Sullivan [Sun, 8 Apr 2012 04:33:25 +0000 (21:33 -0700)] 
Reduce the amount of code generated for string literals

Previously, every Text literal generated a big wad of inefficient
code:

    {-# LANGUAGE OverloadedStrings #-}
    foo :: Text
    foo = "foo"

This would first convert to a String, then to a Text.  To make
matters worse, the code for conversion from String to Text was
inlined at every site where a string literal occurred (expected,
but undesired, behaviour).

In this change, we introduce a direct conversion from Addr# to each
of the Text types, and we ensure that uses of these never result in
excessive code generation.

7 years agoAdded tag 0.11.1.13 for changeset 6a3d847a56a6
Bryan O'Sullivan [Tue, 24 Jan 2012 01:09:34 +0000 (17:09 -0800)] 
Added tag 0.11.1.13 for changeset 6a3d847a56a6

7 years agoBump version to 0.11.1.13
Bryan O'Sullivan [Tue, 24 Jan 2012 01:08:45 +0000 (17:08 -0800)] 
Bump version to 0.11.1.13

7 years agoRemove a rewrite rule that makes GHC 7.4.1 ill
Bryan O'Sullivan [Tue, 24 Jan 2012 01:08:30 +0000 (17:08 -0800)] 
Remove a rewrite rule that makes GHC 7.4.1 ill

The effect of the rule was to make isPrefixOf infloop; see [GHC bug
5783](http://hackage.haskell.org/trac/ghc/ticket/5783) for details.

This fixes gh-16.

7 years agoMerge pull request #9 from jaspervdj/master
Bryan O'Sullivan [Fri, 13 Jan 2012 22:29:18 +0000 (14:29 -0800)] 
Merge pull request #9 from jaspervdj/master

Simpler restreaming state

7 years agoMerge
Bryan O'Sullivan [Sat, 7 Jan 2012 22:01:19 +0000 (14:01 -0800)] 
Merge

7 years agoAdded tag 0.11.1.12 for changeset 204da16b5098
Bryan O'Sullivan [Fri, 23 Dec 2011 22:42:55 +0000 (14:42 -0800)] 
Added tag 0.11.1.12 for changeset 204da16b5098

7 years agoMany improvements, all small.
Bryan O'Sullivan [Fri, 23 Dec 2011 22:12:36 +0000 (14:12 -0800)] 
Many improvements, all small.

Add a span_ function, using unboxed tuples, to Text.Private.

Use span_ in a few places where it can help a little.

Relax the constraint on rational to Fractional.

Specialize over many more integral types.

7 years agoReduce pointer arithmetic for better speed.
Bryan O'Sullivan [Fri, 23 Dec 2011 20:28:11 +0000 (12:28 -0800)] 
Reduce pointer arithmetic for better speed.

7 years agoImprove ASCII encoding performance in a safer way.
Bryan O'Sullivan [Fri, 23 Dec 2011 20:24:17 +0000 (12:24 -0800)] 
Improve ASCII encoding performance in a safer way.

7 years agoBump version to 0.11.1.12
Bryan O'Sullivan [Fri, 23 Dec 2011 20:03:31 +0000 (12:03 -0800)] 
Bump version to 0.11.1.12

7 years agoMerge the performance- and correctness-affecting commits away
Bryan O'Sullivan [Fri, 23 Dec 2011 20:03:18 +0000 (12:03 -0800)] 
Merge the performance- and correctness-affecting commits away

7 years agoOops! Back out part of 59aad6977070 - it was wrong
Bryan O'Sullivan [Fri, 23 Dec 2011 20:02:07 +0000 (12:02 -0800)] 
Oops! Back out part of 59aad6977070 - it was wrong

My assertion that it was safe to skip the "do I have 1 byte available?" check
was incorrect.

7 years agoA valiant attempt at improving UTF-8 encoding performance.
Bryan O'Sullivan [Fri, 23 Dec 2011 19:57:13 +0000 (11:57 -0800)] 
A valiant attempt at improving UTF-8 encoding performance.

This didn't actually work - it slowed down aeson encoding by almost 2x!

7 years agoMake span slightly faster and simpler
Bryan O'Sullivan [Fri, 23 Dec 2011 17:53:36 +0000 (09:53 -0800)] 
Make span slightly faster and simpler

This drops a single allocation of a boxed integer.

7 years agoAdded tag 0.11.1.11 for changeset 8b981edd27be
Bryan O'Sullivan [Fri, 23 Dec 2011 08:15:14 +0000 (00:15 -0800)] 
Added tag 0.11.1.11 for changeset 8b981edd27be

7 years agoBump version to 0.11.1.11
Bryan O'Sullivan [Fri, 23 Dec 2011 08:14:53 +0000 (00:14 -0800)] 
Bump version to 0.11.1.11

7 years agoMake encoding slightly faster.
Bryan O'Sullivan [Fri, 23 Dec 2011 07:53:24 +0000 (23:53 -0800)] 
Make encoding slightly faster.

The improvement mainly comes from dropping a redundant check when decoding
an ASCII byte.

7 years agoAdded tag 0.11.1.10 for changeset 407937739e9e
Bryan O'Sullivan [Wed, 21 Dec 2011 05:31:25 +0000 (21:31 -0800)] 
Added tag 0.11.1.10 for changeset 407937739e9e