Streamly: Types & Modules Cheat Sheet
This guide gives you a quick overview of Streamly’s core modules, types, and their typical use cases. Use it as a reference map when navigating the library.
streamly-core package
streamly package
Streams
Sources
Stream m a— statically fused, composable source streams
Module:Streamly.Data.StreamUnfold m a b— statically fused streams, for nested fusion
Module:Streamly.Data.UnfoldStreamK m a— CPS based source streams for dynamic composition
Module:Streamly.Data.StreamK
Transformations
Scanl m a b— statically fused scans, for composable stateful transformation
Module:Streamly.Data.Scanl
Consumers
Fold m a b— statically fused, composable stream consumers
Module:Streamly.Data.FoldParser a m b— statically fused, composable parsers
Module:Streamly.Data.ParserParserK a m b— CPS based parsers for dynamic composition
Module:Streamly.Data.ParserK
Arrays
Immutable
Array a => Unbox a— immutable, unboxed (pinned/unpinned)
Module:Streamly.Data.ArrayArray a— unconstrained type
Module:Streamly.Data.Array.Generic
Mutable
MutArray a => Unbox a— mutable, unboxed (pinned/unpinned)
Module:Streamly.Data.MutArrayMutArray a— unconstrained type
Module:Streamly.Data.MutArray.GenericRingArray a => Unbox a— unboxed, circular buffer (pinned/unpinned)
Module:Streamly.Data.RingArray
Serialization
Unbox a— type class for fixed length binary serialization
Module:Streamly.Data.MutByteArraySerialize a— type class for variable length binary serialization
Module:Streamly.Data.MutByteArrayMutByteArray— raw mutable byte arrays
Module:Streamly.Data.MutByteArray
Unicode Operations
Streamly.Unicode.Stream— encode/decode streams of textStreamly.Unicode.Parser— parsers for Unicode chars/stringsStreamly.Unicode.String— string interpolation utilities
Concurrent Operations
High-level concurrent, time-based, and lifted operations.
Streamly.Data.Stream.Prelude— concurrent operations forStreamtypeStreamly.Data.Scanl.Prelude— concurrent operations forScanltypeStreamly.Data.Fold.Prelude— concurrent operations forFoldtypeStreamly.Data.Stream.MkType— define custom monad/applicative stream types
File System
Streamly.Console.Stdio— console (stdin/stdout/stderr) streamsStreamly.FileSystem.Handle— handle-based I/O streamsStreamly.FileSystem.FileIO— path-based file I/O streamsStreamly.FileSystem.DirIO— directory read streamsStreamly.FileSystem.Path— file path operations
Network
Streamly.Network.Socket— socket-level stream operationsStreamly.Network.Inet.TCP— TCP accept streams/connect