Hacker News with Generative AI: Error Handling

Can jank beat Clojure's error reporting? (jank-lang.org)
Hey folks! I've spent the past quarter working on jank's error messages. I've focused on reaching parity with Clojure's error reporting and improving upon it where possible.
Show HN: A Simple Inbox for Your Exceptions and Odd Events (wt.tools)
Decoding JSON sum types in Go without panicking (nicolashery.com)
The Go programming language doesn't have native support for sum types, but we'll see how we can emulate them, how to decode and encode them into JSON, and how in some cases they can help avoid runtime panic exceptions.
Why Every Programming Language Sucks at Error Handling (aiono.dev)
Proper error handling is hard. It's a concept since the inception of programming, yet solutions we have are hardly satisfying. When one tries to add proper error handling into their code it gets much more complicated than just implementing the happy path. Part of it is inescapable because it's essential complexity, but part of the complication is not necessary hence accidental complexity.
Why Go's Error Handling Is Awesome (rauljordan.com)
Go's infamous error handling has caught quite the attention from outsiders to the programming language, often touted as one of the language's most questionable design decisions.
An epic treatise on error models for systems programming languages (typesanitizer.com)
In research papers on programming languages, there is often a focus on sophisticated type system features to rule out certain classes of errors, whereas error handling itself receives relatively little attention, despite its importance.
eserde – a serde that just doesn't stop (github.com/mainmatter)
Don't stop at the first deserialization error.
Discussion: Reduce error handling boilerplate in Golang using '?' (github.com/golang)
Syntax error recovery in parsing expression grammars (PEG parsers) (arxiv.org)
Parsing Expression Grammars (PEGs) are a formalism used to describe top-down parsers with backtracking. As PEGs do not provide a good error recovery mechanism, PEG-based parsers usually do not recover from syntax errors in the input, or recover from syntax errors using ad-hoc, implementation-specific features. The lack of proper error recovery makes PEG parsers unsuitable for using with Integrated Development Environments (IDEs), which need to build syntactic trees even for incomplete, syntactically invalid programs.
Error Stacking in Rust (greptime.com)
A detailed exploration of error handling in Rust within GreptimeDB, proposing improvements and discussing future work.
How we centralized and structured error handling in Golang (olivernguyen.io)
Handling errors in Go is simple and flexible – yet no structure!
Idiomatic Errors in Clojure (daveliepmann.com)
The idiomatic Clojure approach to error-handling is that there isn’t one. There’s a whole bunch.
Union types ('enum types') would be complicated in Go (utoronto.ca)
Every so often, people wish that Go had enough features to build some equivalent of Rust's Result type or Option type, often so that Go programmers could have more ergonomic error handling.
Bringing Faster Exceptions to Rust (purplesyringa.moe)
Three months ago, I wrote about why you might want to use panics for error handling.
The Ultimate Guide to Error Handling in Python (miguelgrinberg.com)
I often come across developers who know the mechanics of Python error handling well, yet when I review their code I find it to be far from good.
Rust error handling (bitfieldconsulting.com)
Things are always going wrong, as I’m sure you’ve noticed, and that applies to our programs too. Sometimes when a function call asks a question, there’s no answer to return—either because some error happened, or because the correct answer is, simply, “no results”.
Why I Prefer Exceptions to Error Values (cedardb.com)
Good error handling is key to robust programs, but often dreaded by programmers because there is always one more edge case.
Guide to Error Handling in Rust (howtocodeit.com)
Ask HN: Why Implement "Something Went Wrong" Error Messages? (ycombinator.com)
"We ran out of columns" (jimmyhmiller.github.io)
A new approach to error handling (boomla.com)
Don't use null objects for error handling (btmc.substack.com)
Linux's DRM Panic "Screen of Death" Sees Patches for QR Code Error Messages (phoronix.com)
Will sending `kill -11` to Java process raises a NullPointerException? (stackoverflow.com)
Moving to Java 17 or how I learned to stop worrying and love NoSuchMethodError (iconsolutions.com)
Linux 6.10 Preps a Kernel Panic Screen – Sort of a "Blue Screen of Death" (phoronix.com)
Designing a website without 404s (pillser.com)
Go: Sentinel errors and errors.Is() slow your code down by 3000% (dolthub.com)
Don't Return Err in Go (akavel.com)
Make invalid states unrepresentable (2023) (geeklaunch.io)