io-streams
Overview The io-streams library contains simple and easy-to-use primitives for I/O using streams. Most users will want to import the top-level convenience module System.IO.Streams, which re-exports most of the library: For first-time users, io-streams comes with an included tutorial, which can be found in the System.IO.Streams.Tutorial module. Features The io-streams user API has two basic types: InputStream a and OutputStream a, and three fundamental I/O primitives: Streams can be transformed by composition and hooked together with provided combinators: Stream composition leaves the original stream accessible: Simple types and operations in the IO monad mean straightforward and simple exception handling and resource cleanup using Haskell standard library facilities like Control.Exception.bracket. io-streams comes with: functions to use files, handles, concurrent channels, sockets, lists, vectors, and more as streams. a variety of combinators for wrapping and transforming streams, including compression and decompression using zlib, controlling precisely how many bytes are read from or written to a stream, buffering output using bytestring builders, folds, maps, filters, zips, etc. support for parsing from streams using attoparsec. support for spawning processes and communicating with them using streams.
hackage.haskell.org
1.5.2.2
over 3 years ago
44
88,532 total
21
188
Links
| Registry | hackage.haskell.org |
| JSON API | View JSON |
| CodeMeta | codemeta.json |
Package Details
| PURL |
pkg:hackage/io-streams
spec |
| License | BSD-3-Clause |
| First Release | about 13 years ago |
| Last Synced | about 10 hours ago |