Go as usual, got this clever idea to use strings and having people parse error messages.
It took until version 1.13 to have something better, and even now too many people still do errors.New("....."), because so is Go world.
It took until version 1.13 to have something better, and even now too many people still do errors.New("....."), because so is Go world.
To solve this, Rust does allow you to just Box<dyn Error> (or equivalents like anyhow). And Go has the Error interface. People who list out all concrete error types are just masochists.