Join Newsletter

I Streamed a Stream

YOW! Lambda Jam 2018

Many people are familiar with Haskell stream processing libraries such as pipes or conduit. However, they can be a bit daunting to newcomers: they contain both input and output types in the same representation and they require all these new operators rather than using well-known function composition.

The streaming library by Michael Thompson takes a simpler approach to represent how to stream data through your code. It offers a more familiar API to anyone used to using lists, whilst still offering a lot of power and flexibility. It also compares very well in terms of performance: conduit's fusion framework tends to use a similar structure!

In this workshop we will have an overview of the streaming ecosystem and how it compares to pipes and conduit, and start using it to efficiently process large amounts of data.

If attending this workshop, you may wish to download the exercises (and fetch any dependencies) beforehand.