frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Show HN: Poddley – Search podcasts by who's speaking

https://poddley.com
1•onesandofgrain•43s ago•0 comments

Same Surface, Different Weight

https://www.robpanico.com/articles/display/?entry_short=same-surface-different-weight
1•retrocog•3m ago•0 comments

The Rise of Spec Driven Development

https://www.dbreunig.com/2026/02/06/the-rise-of-spec-driven-development.html
1•Brajeshwar•7m ago•0 comments

The first good Raspberry Pi Laptop

https://www.jeffgeerling.com/blog/2026/the-first-good-raspberry-pi-laptop/
2•Brajeshwar•7m ago•0 comments

Seas to Rise Around the World – But Not in Greenland

https://e360.yale.edu/digest/greenland-sea-levels-fall
1•Brajeshwar•7m ago•0 comments

Will Future Generations Think We're Gross?

https://chillphysicsenjoyer.substack.com/p/will-future-generations-think-were
1•crescit_eundo•10m ago•0 comments

State Department will delete Xitter posts from before Trump returned to office

https://www.npr.org/2026/02/07/nx-s1-5704785/state-department-trump-posts-x
2•righthand•13m ago•0 comments

Show HN: Verifiable server roundtrip demo for a decision interruption system

https://github.com/veeduzyl-hue/decision-assistant-roundtrip-demo
1•veeduzyl•14m ago•0 comments

Impl Rust – Avro IDL Tool in Rust via Antlr

https://www.youtube.com/watch?v=vmKvw73V394
1•todsacerdoti•14m ago•0 comments

Stories from 25 Years of Software Development

https://susam.net/twenty-five-years-of-computing.html
2•vinhnx•15m ago•0 comments

minikeyvalue

https://github.com/commaai/minikeyvalue/tree/prod
3•tosh•20m ago•0 comments

Neomacs: GPU-accelerated Emacs with inline video, WebKit, and terminal via wgpu

https://github.com/eval-exec/neomacs
1•evalexec•25m ago•0 comments

Show HN: Moli P2P – An ephemeral, serverless image gallery (Rust and WebRTC)

https://moli-green.is/
2•ShinyaKoyano•29m ago•1 comments

How I grow my X presence?

https://www.reddit.com/r/GrowthHacking/s/UEc8pAl61b
2•m00dy•30m ago•0 comments

What's the cost of the most expensive Super Bowl ad slot?

https://ballparkguess.com/?id=5b98b1d3-5887-47b9-8a92-43be2ced674b
1•bkls•31m ago•0 comments

What if you just did a startup instead?

https://alexaraki.substack.com/p/what-if-you-just-did-a-startup
5•okaywriting•38m ago•0 comments

Hacking up your own shell completion (2020)

https://www.feltrac.co/environment/2020/01/18/build-your-own-shell-completion.html
2•todsacerdoti•41m ago•0 comments

Show HN: Gorse 0.5 – Open-source recommender system with visual workflow editor

https://github.com/gorse-io/gorse
1•zhenghaoz•41m ago•0 comments

GLM-OCR: Accurate × Fast × Comprehensive

https://github.com/zai-org/GLM-OCR
1•ms7892•42m ago•0 comments

Local Agent Bench: Test 11 small LLMs on tool-calling judgment, on CPU, no GPU

https://github.com/MikeVeerman/tool-calling-benchmark
1•MikeVeerman•43m ago•0 comments

Show HN: AboutMyProject – A public log for developer proof-of-work

https://aboutmyproject.com/
1•Raiplus•43m ago•0 comments

Expertise, AI and Work of Future [video]

https://www.youtube.com/watch?v=wsxWl9iT1XU
1•indiantinker•44m ago•0 comments

So Long to Cheap Books You Could Fit in Your Pocket

https://www.nytimes.com/2026/02/06/books/mass-market-paperback-books.html
3•pseudolus•44m ago•1 comments

PID Controller

https://en.wikipedia.org/wiki/Proportional%E2%80%93integral%E2%80%93derivative_controller
1•tosh•48m ago•0 comments

SpaceX Rocket Generates 100GW of Power, or 20% of US Electricity

https://twitter.com/AlecStapp/status/2019932764515234159
2•bkls•48m ago•0 comments

Kubernetes MCP Server

https://github.com/yindia/rootcause
1•yindia•50m ago•0 comments

I Built a Movie Recommendation Agent to Solve Movie Nights with My Wife

https://rokn.io/posts/building-movie-recommendation-agent
4•roknovosel•50m ago•0 comments

What were the first animals? The fierce sponge–jelly battle that just won't end

https://www.nature.com/articles/d41586-026-00238-z
2•beardyw•58m ago•0 comments

Sidestepping Evaluation Awareness and Anticipating Misalignment

https://alignment.openai.com/prod-evals/
1•taubek•58m ago•0 comments

OldMapsOnline

https://www.oldmapsonline.org/en
2•surprisetalk•1h ago•0 comments
Open in hackernews

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

https://okmij.org/ftp/Haskell/extensible/more.pdf
94•todsacerdoti•2mo ago

Comments

sctb•2mo ago
(2015) More information here: https://okmij.org/ftp/Haskell/extensible.
nbaksalyar•2mo 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.
kccqzy•2mo ago
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•2mo ago
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•2mo ago
> by far the most popular effect system around

Crazy claim to make without providing any evidence

epolanski•2mo 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•2mo ago
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•2mo ago
Hey, those docs for Bluefin are a great introduction to the space. Very well written!
tome•2mo ago
Thanks! Glad they were helpful.
solomonb•2mo ago
`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•2mo ago
> 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•2mo 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. : )

tome•2mo ago
No, no loss of safety. Was there something in particular you were thinking of? With IO-wrapper effect systems you give up native multishot continuations (but you can always get them back by wrapping in LogicT).

You can look at my table of "A Comparison of Effect Systems at a Glance" to see all the tradeoffs:

https://hackage-content.haskell.org/package/bluefin-0.2.0.0/...

tome•2mo ago
> your library is really cool. : )

And thanks! Glad you like it. Feel free to reach out to me at any time if you'd like any help with it or have any questions or comments.

solomonb•2mo ago
> No, no loss of safety. Was there something in particular you were thinking of?

This is second hand information and may apply more so to effectful then bluefin. I have just done some pretty minimal test projects with bluefin and effectful but I was told:

""" It's not too hard to make segfault if you organize your higher order effects just right.

It's been a while but i think you just return a continuation with the effect you just handled, and then all of a sudden it's not in scope and yet you need to still handle it.

And the tricks they use to make things go fast don't work in this case and things go boom """

tome•2mo ago
That definitely doesn't apply to Bluefin. I can't rule out it applying to effectful, but it is careful to do dynamic checks to make sure you can't use effects in the wrong scope. Maybe you're thinking of eff (i.e. what started this thread)? Alexis King described how to get it to segfault in this video: https://www.twitch.tv/videos/1163853841 (now private, sadly).
Twey•2mo 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

thesz•2mo ago
What is language feature in some language is a library in Haskell.
Twey•2mo ago
Arguably an effect monad is an EDSL that has algebraic effects :)

But the things these languages are experimenting with are low-level implementation details that wouldn't be amenable to embedding. There's no escaping the Haskell GC.

thesz•2mo ago
Atom [1] is an EDSL that escaped Haskell GC. Note that Atom takes ideas from Bluespec which compiles to hardware circuits, where GC is not availble.

  [1] https://hackage.haskell.org/package/atom
One can make a Haskell EDSL with effects and everything and output a C (or some compiler's IR) code.

These languages you mentioned repeat Rust's mistake.

Rust's type system includes rules that remove definitions from the scope/environment. This is inherent and obligatory for uniqueness/linear types type systems.

At the time Rust was conceived, Haskell had HList library [2] and Beyond Monads [3] extended state monad. Combining both would embed into Haskell most, if not all, Rust at the time, allowing to pursue research of how to combine borrow logic with algebraic effects. But Rust's developers preferred to go OCaml implementation (syntax first) way and not to pursue complexity issues of semantics.

  [2] https://hackage.haskell.org/package/HList
  [3] http://blog.sigfpe.com/2009/02/beyond-monads.html
wavemode•2mo 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.
EdNutting•2mo ago
See also: https://scholar.google.com/citations?hl=en&user=0E8zPucAAAAJ...

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

endgame•2mo 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.

throwthrow0987•2mo ago
Effect systems are a trend that will go away. You can't statically guarantee that only, for example, the DB has side effects in a function. So what's the point? Haskell got it right in the first instance: IO or pure.
tome•2mo ago
> Effect systems are a trend that will go away

I'm willing to bet the contrary: that IO-wrapper effect systems are the future of Haskell (particularly Bluefin, but then that's my library, so I would say that).

> You can't statically guarantee that only, for example, the DB has side effects in a function

Yes, you absolutely can.

Twey•2mo ago
The point of effect systems isn't to stratify the behaviour of the operating system (it's the Wild West out there). It's to stratify the behaviour of your program. A function that has a DB effect isn't telling you that it will make Postgres queries (which can do anything!), it's telling you that it wants to make DB queries so you need to pass it a handler of a certain form to let it do that, hexagonal architecture style.

But you can also stratify in the other direction. ‘Pure’ functions aren't real outside of mathematics: every function can have side effects like allocating memory, possibly not terminating, internal (‘benevolent’) mutation, et cetera. When we talk about ‘pure’ functions we usually mean that they have only a particular set of effects that the language designer considered ‘safe enough’, where ‘enough’ is usually defined with reference to the ergonomic impact of making that effect explicit. Algebraic effects make effects (and importantly effect composition — we got here in the first place because we were fed up of monad transformers) more ergonomic to use, which means you can make more effects explicit without annoying your users.