F# library providing asynchronous sequences compatible with BCL IAsyncEnumerable for async/await workflows.
FSharp.Control.AsyncSeq is a library of asynchronous programming utilities for F# that provides asynchronous sequences. It enables developers to work with sequences of values produced asynchronously, which is essential for handling streaming data, I/O operations, and other asynchronous workflows in F# applications.
F# developers working with asynchronous data streams, such as those handling I/O operations, streaming APIs, or database queries, and developers needing interoperability with .NET's IAsyncEnumerable ecosystem.
It offers seamless interoperability with .NET's standard IAsyncEnumerable type while providing idiomatic F# functional combinators, eliminating the need for conversion between F# async sequences and BCL async sequences.
Asynchronous sequences for F#
AsyncSeq is a type alias for IAsyncEnumerable, enabling direct use with C# await foreach and .NET APIs without conversion, as highlighted in the v4.0 compatibility notes.
Provides a comprehensive set of module functions for transforming, filtering, and composing asynchronous sequences, supporting idiomatic F# functional programming.
Includes clear guidance for upgrading from previous versions, such as v3.x to v4.0, ensuring compatibility with modern .NET async patterns without breaking changes.
Maintained by multiple contributors with an open contribution model, as listed in the maintainers section, promoting ongoing development and support.
Version 4.0 introduced breaking changes, like obsoleting conversion helpers (e.g., AsyncSeq.ofAsyncEnum), requiring code modifications and careful migration from older versions.
Depends on IAsyncEnumerable, available only from .NET Core 3.0 onward, restricting use in projects on older .NET frameworks without this support.
While interoperable, the library is tailored for F# developers, potentially offering less value in projects not leveraging F#'s functional idioms or in mixed-language environments.
http://hopac.github.io/Hopac/Hopac.html
High performance System.Threading.(Value)Task computation expressions for F#
F# computation expression builder for System.Threading.Tasks
F# Async workflow <--> .NET Task/ValueTask easy seamless interoperability library.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.