packages feed

outsort-0.1.0: README.md

# Outsort: generic (Haskell-based) external sorting


Example

```haskell
    import qualified Data.Conduit.Combinators as CC
    import qualified Data.Conduit.Binary as CB

    import Algorithms.OutSort (isolateBySize)
    import Algorithms.SortMain (sortMain)

    main :: IO ()
    main = sortMain
        CB.lines
        CC.unlinesAscii
        (isolateBySize (const 1) 500000)
```

All that is needed is a decoder (`ConduitT ByteString a m ()`), an encoder
(`ConduitT ByteString a m ()`), and a function to split the input into blocks
(`ConduitT a a m ()`). Given these elements, the result is a programme which can
sort arbitrarily large inputs using external memory.

Licence: MIT

Author: [Luis Pedro Coelho](http://luispedro.org) (email:
[coelho@embl.de](mailto:coelho@embl.de)) (on twitter:
[@luispedrocoelho](https://twitter.com/luispedrocoelho))