Top all-time · #8785
Nicolas Rinaudo
Personal blog · nrinaudo.github.io/articlesprogramming
Nicolas Rinaudo's personal blog at nrinaudo.github.io covers programming. Since 2019, 9 different Hacker News readers have linked it 11 times. It is still writing: the last post was on 2026-02-05, and you can follow it by feed.
Too few sampled comments (4) to say how often HN recommends it.?
Why HN links it
HN commenters link Nicolas Rinaudo's Scala best-practices guide, which explains functional programming and algebraic data types concisely with examples, as a practical alternative to longer tutorials.
Summarised by Claude from a sample of 4 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
What Hacker News says?
https://nrinaudo.github.io/scala-best-practices/definitions/... There is a lot of scala reference material regarding ADTs
Comment linking /scala-best-practices/definitions/adt.html
on “Algebraic Data Types: Things I wish someone had explained about FP”Submitted Capture Checking in Scala as a story · 63 points
HN discussionHonestly a much less gimmicky and concise guide can be found here [0]. The focus is on scala but it does away with longwinded storytelling style explanations and petulant comics. It gets to the point, gives a couple of examples and tells you exactly why each tenant of functional programming is useful in one sentence. [0] https://nrinaudo.github.io/scala-best-practices/definitions/...
Comment linking /scala-best-practices/definitions/referential_transparency.html
on “Why is learning functional programming so damned hard? (2019)”Submitted Effects as Capabilities in Scala as a story · 4 points
HN discussion> for scala that doesn't really exist https://nrinaudo.github.io/scala-best-practices/
Comment linking /scala-best-practices/
on “The Road to Scala 3”Submitted Programming a Language as a story · 3 points
HN discussionI'm not familiar with GPUs specifically, but I have seen this for ORMs that support multiple SQL dialects (e.g. [0]). A great technique is called 'tagless final encoding' [1]. Using this technique, you can specify capabilities of an embedded domain-specific language (eDSL) such that you can have a shared (but narrow) common set of features, while allowing specializations of this eDSL to support extra features. [0]:…
Comment linking /articles/tagless_final.html
on “Optimizing a Rust GPU matmul kernel”Submitted Controlling program flow with capabilities in Scala as a story · 2 points
HN discussionSubmitted Referential Transparency in FP and Scala as a story · 2 points
HN discussionSubmitted Collection of Scala best practices as a story · 2 points
HN discussionSubmitted Effects as Capabilities as a story · 1 points
HN discussion