Show HN: Catena – lazy sequences for Go where errors are elements
Category: library
Tags: go, iterators, lazy-evaluation, functional-pipelines, concurrency
Score: 7.0/10 (Innovation: 6, Technical: 8, Documentation: 8, Utility: 6)
Catena is a Go library providing lazy, fully typed iterator pipelines with error-as-element semantics, built on Go 1.27's iter.Seq and generic methods. It distinguishes itself with a rigor uncommon in utility libraries: a conformance harness, 100% statement coverage enforced in CI, documented memory bounds, and operators like FoldBy and TopNBy that change the memory class of computations. However, it requires Go 1.27+, a very new toolchain, which sharply limits near-term adoption.
Target audience: backend developers
Repository: https://github.com/NerdMeNot/catena · Go · Apache-2.0 · 1 stars
View on Hacker News