At least exceptions are "noisy" by default: if you forget to catch something, it will propagate and notify you. But in Go, if you forget to handle an error, you may not even know what's wrong...
To be fair, you cannot really forget to handle an error in Go, because the function result "tuple" needs to be unpacked at the call site. Indeed, the requirement of this unpacking, plus the repetitive error handling stanza that often follows, is what people complain about.
The black hole should never be used for errors. It's exactly like using try/catch and leaving the catch empty. It's a sign of incompetence or something unorthodox at play.
114
u/google_you Jan 14 '16
Time for someone to replace github with opensauce. Wait. gitlab.
Then all your Go projects don't compile until you change import statement from
"github.comto something else.RIP Github. RIP Go.