Permalink
Commits on Jul 10, 2011
  1. Add Chinese HTML to decode benchmark

    committed Jul 10, 2011
Commits on Jul 8, 2011
  1. Benchmark the performance of iconv.

    On my Mac, it takes 33ms, vs about 20ms for the Haskell code.
    committed Jul 8, 2011
  2. Bump version

    committed Jul 8, 2011
  3. Merge

    committed Jul 8, 2011
  4. Speed up UTF-8 decoding by a little over 2x

    The previous code was more concise, but alas GHC boxed each Word8
    it read from the ByteString, which resulted in poor performance.
    
    This mankier code adds (seemingly required) strictness annotations,
    along with a little bit of manual CSE.
    
    Timing of the DecodeUtf8/Strict benchmark went from 41.8ms to 19.6ms,
    a pleasing improvement.
    committed Jul 8, 2011
Commits on Jun 29, 2011
  1. Bump version

    committed Jun 29, 2011
  2. Merge

    committed Jun 29, 2011
Commits on Jun 28, 2011
  1. Oh noes! I was miscalculating the initial buffer size!

    When performance testing encodeUtf8, I noticed that for some reason I
    was still seeing "ensure" show up in the profile, when I expected it
    shouldn't have been.
    
    Turns out I was using a "min" where I should have been using a "max",
    and thus allocating an initial bytestring that would almost always be
    too small, thus forcing reallocations and copying. Boo!
    committed Jun 28, 2011
  2. Eliminate unnecessary resizes from encodeUtf8.

    We had been performing a resize any time that (a) we had data to write
    and (b) we got to within 4 bytes of filling the target bytestring.
    This was safe, but suboptimal, as it meant that in the common case of
    encoding ASCII text, we would *always* perform a resize.
    
    Now, we check the exact number of bytes we need to fit, and resize
    only if they won't fit.  This eliminates resizes for ASCII data, and
    makes them a little less likely for other data.
    committed Jun 28, 2011
Commits on Jun 27, 2011
  1. Switch to native code for copying and comparison.

    --HG--
    rename : Data/Text/Unsafe.hs => Data/Text/Unsafe/Base.hs
    committed Jun 27, 2011
  2. Ignore more

    committed Jun 27, 2011
  3. Merge

    committed Jun 27, 2011
  4. Merge

    committed Jun 27, 2011
  5. Merge

    committed Jun 27, 2011
Commits on Jun 23, 2011
  1. Merge

    committed Jun 23, 2011
  2. Merge

    committed Jun 23, 2011
  3. Merge pull request #6 from jaspervdj/tests

    Port tests to cabal based infrastructure
    committed Jun 23, 2011
  4. Merge 420d46b into f23938f

    GitHub Merge Button committed Jun 23, 2011
  5. Merge pull request #5 from jaspervdj/master

    Further work on benchmarks
    committed Jun 23, 2011
  6. Merge 7d61b05 into 419ee9b

    GitHub Merge Button committed Jun 23, 2011
Commits on Jun 22, 2011
  1. Remove old tests, fix README

    jaspervdj committed Jun 22, 2011
Commits on Jun 21, 2011
  1. Add regressions in cabal tests

    jaspervdj committed Jun 21, 2011
  2. Move =^= to TestUtils

    jaspervdj committed Jun 21, 2011
Commits on Jun 20, 2011
Commits on Jun 16, 2011
  1. Merge pull request #2 from nudded/patch-2

    Ruby fold benchmark: Added idiomatic way of dividing array into parts.
    jaspervdj committed Jun 16, 2011
  2. Merge pull request #1 from nudded/patch-1

    Ruby fold benchmark: Even better now.
    jaspervdj committed Jun 16, 2011