0:00 / 0:00
#haskell#bluefin#effect-systems
Get started with Bluefin by Tom Ellis #FnConf 2025
ConfEngine
14K subscribers • 20 videos on Hallway
- Recommended by 1 person: 1 in engineering communities.
- Presented by Tom Ellis, creator of Bluefin
Intermediate. Assumes working knowledge.
1.1K views1 year ago1 recommendation
Programming languagesSoftware designHaskellFunctional programming
Tom Ellis introduces Bluefin, a Haskell effect system that represents effects using value-level handles rather than type-level signatures.
Bluefin is a new effect system for Haskell which provides a simple interface to composable and efficient effects. Unlike existing effect systems, it represents effects by value-level "handles" or "capabilities", not at the type level. This short tutorial will show you how to get comfortable and write your first programs with Bluefin. More details: confengine.com/conferences/functional-conf-2025/proposal/212… Conference Link: functionalconf.comWhy it's here
1 person recommends thisu/sridcacain r/haskell • Mentions
On “haskell streaming libraries”
The post doesn't mention `Bluefin.Stream` which the author claims is ready for real-world apps. Also, see: his recent conf talk.
u/tomejaguarin r/haskell • Mentions
On “Am I the only person who hates Monad Transformers?”
Great, thanks, glad you like it! You may also like Get started with Bluefin.
For "Bluefin 2" it would great if type level sets could be integrated into GHC's type system. Much of the type variable fiddling would be resolved by that.
Effectful benchmarks exist: https://github.com/haskell-effectful/effectful/blob/master/benchmarks/README.md I haven't benchmarked Bluefin though. I would be astonished if it's not "basically the same as naked `IO` or effectful". I don't see how it could be any different, since it's just a newtype wrapper over `IO` (like effectful) plus function calls (explicit, whereas effectful is implicit).
> do you have examples integrating Bluefin with Streamly?
I haven…