nh2 / conduit-concurrent-map

Concurrent, order-preserving mapping Conduit for Haskell

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

conduit-concurrent-map

Provides a Conduit that maps a function concurrently over incoming elements, maintaining input order.

Note that this is not about running different parts of a conduit pipeline concurrently (see stm-conduit for something that does that). Instead, it it provides one pipeline element that processes elements concurrently internally.

Comparison to other libraries

  • conduit-algorithms
    • Data.Conduit.Algorithms.Async's asyncMapC is similar but only does pure maps (a -> b) instead of monadic maps (a -> m b)
    • Data.Conduit.Algorithms.Async's asyncMapC is not async exception safe
  • stm-conduit
    • Completely different goal: Connects multiple conduit components so that they run concurrently.

About

Concurrent, order-preserving mapping Conduit for Haskell


Languages

Language:Haskell 100.0%