🖊️ I was meant to be travelling this week. My plans changed, but I’d already planned for a shorter issue, so it’s a quicker one this time. Back to full service next week! __ Peter Cooper, your editor |
“For the foreseeable future, the Go team will stop pursuing syntactic language changes for error handling. We will also close all open and incoming proposals that concern themselves primarily with the syntax of error handling, without further investigation.”
___ Robert Griesemer and the Go team
|
[ On | No ] Syntactic Support for Error Handling — The topic of handling errors in Go, and if it’s possible to improve the syntax around doing so, has been raised many times over the years, but sometimes it’s worth drawing a line under things and to focus elsewhere. Robert explains the matter, some of the proposals made over the years, and the benefits of maintaining the status quo.
Robert Griesemer
|
Pure vs. Impure Iterators in Go — Go 1.23 introduced custom iterators, but the standard ‘single-use’ vs. not classification can be confusing. This post proposes a clearer pure vs. impure distinction, with concrete examples and performance insights.
Julien Cretel
|
Simpler Backoff — Exponential backoff algorithms can be complex and difficult to reason about, or you can use a lookup table to make it trivial.
Josh Bleecher Snyder
|
💡 You might also find Bob vs GORM a useful comparison (there are also comparisons with Ent, SQLBoiler, and Jet over on the left). |
-
MCP Go 0.31 – An implementation of the Model Context Protocol (MCP).
-
Revive 1.10 – Fast, configurable, extensible, flexible linter for Go.
-
dae 1.0 – High-performance eBPF-based transparent proxy.
-
FrankenPHP 1.7 – Modern Go-powered PHP app server.
-
Air 1.62 – Live reload for Go apps.
-
pdfcpu 0.11 – Go PDF processor.
|
|