Not

Hacker News!

Beta
Home
Jobs
Q&A
Startups
Trends
Users
Live
AI companion for Hacker News

Not

Hacker News!

Beta
Home
Jobs
Q&A
Startups
Trends
Users
Live
AI companion for Hacker News
  1. Home
  2. /Story
  3. /Freer Monads, More Extensible Effects (2015) [pdf]
  1. Home
  2. /Story
  3. /Freer Monads, More Extensible Effects (2015) [pdf]
Nov 20, 2025 at 9:56 AM EST

Freer Monads, More Extensible Effects (2015) [pdf]

todsacerdoti
92 points
29 comments

Mood

thoughtful

Sentiment

neutral

Category

tech

Key topics

Functional Programming

Haskell

Monads

Extensible Effects

A PDF paper discussing Freer Monads and extensible effects in Haskell.

Snapshot generated from the HN discussion

Discussion Activity

Active discussion

First comment

3h

Peak period

15

Day 1

Avg / period

15

Comment distribution15 data points
Loading chart...

Based on 15 loaded comments

Key moments

  1. 01Story posted

    Nov 20, 2025 at 9:56 AM EST

    3d ago

    Step 01
  2. 02First comment

    Nov 20, 2025 at 12:32 PM EST

    3h after posting

    Step 02
  3. 03Peak activity

    15 comments in Day 1

    Hottest window of the conversation

    Step 03
  4. 04Latest activity

    Nov 20, 2025 at 8:13 PM EST

    3d ago

    Step 04

Generating AI Summary...

Analyzing up to 500 comments to identify key contributors and discussion patterns

Discussion (29 comments)
Showing 15 comments of 29
kccqzy
3d ago
4 replies
If you are looking for real-world code for an effect system, not just a PDF paper, you should probably look at the eff library: https://github.com/hasura/eff

The acknowledgement section on that GitHub README mentions this paper.

epolanski
3d ago
1 reply
Also effect-ts in TypeScript world, which is by far the most popular effect system around (quite sure it has overtaken Scala's ZIO from which it is inspired).

The ecosystem is massive.

Cons: TypeScript is a great type system but requires some investment to get the best out of it, it's also very verbose.

Pros: you have access to the entirety of the TypeScript ecosystem.

https://effect.website/

pxeger1
3d ago
1 reply
> by far the most popular effect system around

Crazy claim to make without providing any evidence

epolanski
3d ago
What other effect library or language has 6 millions + downloads per month (that's more than angular) and meetups popping all around the world?
tome
3d ago
1 reply
eff has never been released to Hackage and as far as I know never used in production. I wouldn't call it "real-world code". For effect systems that people do actually use in production I suggest

* Polysemy: https://hackage.haskell.org/package/polysemy

* effectful: https://hackage.haskell.org/package/effectful

* Bluefin: https://hackage-content.haskell.org/package/bluefin/docs/Blu...

[Disclosure: Bluefin in my effect system]

tmoertel
3d ago
Hey, those docs for Bluefin are a great introduction to the space. Very well written!
solomonb
3d ago
1 reply
`eff` is a research project that is no longer in active development and never made it to production in any sense. It would be AMAZING if `eff` were completed but I dont think that will happen at this point.

`eff` is based on delimited continuations (which Alexis had to build into GHC), it is not using `Freer`. If you want to look at an effect system in Haskell that actually has been used in production AND is based on this paper then look at `freer-simple`: https://hackage.haskell.org/package/freer-simple

No it is not high performance, but neither are any other Haskell effect systems and performance is relative to your problem domain. It also has the benefit of being implemented very similarly to Oleg's paper making it a lot easier to learn from then most other options.

tome
3d ago
1 reply
> No it is not high performance, but neither are any other Haskell effect systems

This is not true. IO-wrapper effect systems (in practice, effectful or Bluefin) have as good performance as Haskell's IO monad, that is to say as good as you can get in Haskell.

solomonb
3d ago
Yes but from what I understand at a loss of safety. You can decide if that is worth it but you aren't getting a free lunch.

that said, your library is really cool. : )

Twey
3d ago
As far as I know the shiniest implementations in the effect typing world at the moment are Koka and Effekt, which are both languages in their own right. They each have their own ideas about implementation to make effects (mostly) zero-cost.

https://koka-lang.github.io/ https://effekt-lang.org/

Frank is pretty old now but perhaps a simpler implementation: https://github.com/frank-lang/frank

wavemode
3d ago
I've always loved this paper. Great reading if you're interested in implementing an effect system from scratch. Though rather overkill if you're just interested in using one.
sctb
3d ago
(2015) More information here: https://okmij.org/ftp/Haskell/extensible.
endgame
3d ago
This paper is up to Oleg's usual high standard, and is a very important step to read if you're catching up on the history of effect systems in Haskell.

As a user, I think effect libraries in Haskell trade off between five main constraints:

* Typelevel wizardry

* Boilerplate

* Performance

* Ability to handle "higher-order" effects (e.g., `bracket`)

* Safety (e.g., not accidentally leaking effects beyond their scope)

The most compelling libraries I've seen from the industrial perspective are the "IO-wrapper" libraries like `cleff`, `effectful`, and `bluefin`. These libraries tend to give good performance, can handle higher-order effects, but trade off a little safety to get the typelevel stuff down a bit. Of these, I currently favour `effectful` but am keeping an eye on `bluefin` (which is very close to `effectful` but with explicit handle-passing). The explicit handle-passing in `bluefin` seems to get the typelevel down a bit more in exchange for asking the user to write a little more boilerplate to explicitly pass handles around.

nbaksalyar
3d ago
I strongly recommend to check all other papers and articles on https://okmij.org/ftp/, every single one of them is brilliant and insightful. I love the pedagogy, the writing style and clarity. Oleg Kiselyov is one of the best technical writers I've discovered recently.
EdNutting
3d ago
See also: https://scholar.google.com/citations?hl=en&user=0E8zPucAAAAJ...

Particularly (2014): https://scholar.google.com/citations?view_op=view_citation&h...

14 more comments available on Hacker News

View full discussion on Hacker News
ID: 45993214Type: storyLast synced: 11/22/2025, 3:22:03 AM

Want the full context?

Jump to the original sources

Read the primary article or dive into the live Hacker News thread when you're ready.

Read ArticleView on HN

Not

Hacker News!

AI-observed conversations & context

Daily AI-observed summaries, trends, and audience signals pulled from Hacker News so you can see the conversation before it hits your feed.

LiveBeta

Explore

  • Home
  • Jobs radar
  • Tech pulse
  • Startups
  • Trends

Resources

  • Visit Hacker News
  • HN API
  • Modal cronjobs
  • Meta Llama

Briefings

Inbox recaps on the loudest debates & under-the-radar launches.

Connect

© 2025 Not Hacker News! — independent Hacker News companion.

Not affiliated with Hacker News or Y Combinator. We simply enrich the public API with analytics.