News for hackers. Stuff that matters.
Re:Where Everything Went Wrong: Error Handling and Error Mes... by junke on Friday February 19, 2021 @09:28AM (#26193485)
Strongly disagree with your disagreement. Programming features help you organize your code. The fact that you actually have a robust software or not with what the language offers is another problem.

When people say "errors are values", I say: yes, but they are a special kind of values. The same way floats are special (signaling NaNs), or that bools are special (short-circuit operators). It is great to have special support for values which need to be used in a certain way (here: don't lose any error, bubble up by default).

It is great to have the opportunity (not the obligation) to use features for separation of concerns. This makes it a bit like an aspect-oriented approach where normal code emits errors and error handling code elsewhere knows how to handle/restart them. If you language allows it, it makes also sense also to decouple logging (tracing functions) or data-access permissions (postgresql row level security).

In the C code I maintain at work, everything is here in plain view, logging, error handling, etc., and I am not complaining, but more recently we tend to use other languages or code generation a lot (think of something like protobuf) because it makes code a lot easier to maintain.

Re:Where Everything Went Wrong: Error Handling and Error Mes... by enriquto on Friday February 19, 2021 @10:04AM (#26193898)
Thanks for explaining so clearly your view. I'm totally biased towards programming practices that make execution paths 100% explicit and local. Yet it is interesting to understand the other point of view (and somewhat liberating, to be honest).
Re:Where Everything Went Wrong: Error Handling and Error Mes... by junke on Friday February 19, 2021 @10:12AM (#26193990)
Thanks for the kind remarks (we are all biased :))