Bluefin Effect System

repository·master·Indexed 41 days ago

https://github.com/tomjaguarpaw/bluefin

A Haskell effect system using value-level capabilities to mix and match effects such as I/O, State, Exceptions, and Streams. Includes support for Bluefin.EarlyReturn, Bluefin.Exception, Bluefin.IO, Bluefin.State, and Bluefin.Stream.

Tokens
278
Snippets
0
Records
3
Agent score
1%

What's inside Bluefin

  1. What is Bluefin effect system?

    master

    Bluefin is an effect system for Haskell that enables the mixing of various effects using value-level capabilities. It provides structured ways to handle common computational effects without relying solely on standard monad transformers or global state.

    Supported effects include:

    • Bluefin.EarlyReturn: For early return semantics.
    • Bluefin.Exception: For exception handling.
    • Bluefin.IO: For I/O operations.
    • Bluefin.State: For managing mutable state.
    • Bluefin.Stream: For stream processing.
  2. How to contribute to Bluefin

    master

    When adding new functionality to the Bluefin ecosystem:

    1. New functions: Add them to the bluefin-contrib package. This is the default location for user contributions.
    2. Promoting functions: If a function in bluefin-contrib should be part of the core bluefin package, please open an issue to discuss it.
  3. Performance warning for GHC 9.12.1 and 9.12.2

    master

    If you are using GHC 9.12.1 or 9.12.2, be aware that Bluefin performance suffers significantly due to a bug in those specific GHC versions.

    Resolution: This issue is expected to be resolved in GHC 9.12.3 and GHC 9.14.1. For more technical details, refer to the issue tracker.