Top all-time · #25033
about:mitranim
Personal blog · mitranim.com/posts · on HN as Mitranimprogrammingphilosophy
about:mitranim is a personal blog at mitranim.com about programming and philosophy. Since 2017, 3 different Hacker News readers have linked it 5 times. It is still writing: the last post was on 2025-11-28, and you can follow it by feed.
Too few sampled comments (1) to say how often HN recommends it.?
Why HN links it
HN readers link this blog's post on exception-like error handling in Go via panic/recover. One commenter cites it while arguing that exceptions and option types each suit different use cases.
Summarised by Claude from a sample of 1 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
About me: bio, works, posts
What Hacker News says?
Golang arguably has exceptions via panic/recover: https://mitranim.com/posts/goex I think the issue is that many languages lacked support for option types for a long time so exceptions got overused and abused. Now the pendulum has swung towards "exceptions are bad". I think both ways of handling errors serve different use cases and it is good to have proper language support for both. I like to use exceptions for err…
Comment linking /posts/goex
on “C++ exception performance three years later”Submitted Language Design: Homoiconicity as a story · 3 points
HN discussionWe need a standard destructor interface instead of choosing a different word every time. Cancel, close, destroy, drop, unmount, they do the same thing. If we settled on ONE destructor interface, we could have automatic resource management. [1] I use `deinit` in all my libraries, as it seems to be the most neutral word appropriate for every case. `arrive` — no particular reason. It's one "errback" method rather than…
Comment linking /espo/
on “Show HN: Cancelable async primitives for JavaScript”In my experience, most async operations fit very well within the small feature set of promises/futures, with only a few operators (map/all/race). Streams should be the optional next layer of abstraction, not the only layer of abstraction. They should be built on top of futures. I quite like how Tokio did it for Rust futures. [1] Not a fan of Rx and similar designs. There are also different types of observables to co…
Comment linking /prax/
on “Show HN: Cancelable async primitives for JavaScript”