I like proposal with:
#name
- invoke a handler by namecatch name {...}
- define a handler
It solved many situations, but i think can be improved with panic and return state, like in proposal:
func returnError() error {
return errors.New()
}
#* := returnError() // alias return error
#! := returnError() // alias panic(error)
Because it is will be decreased user code(user need write this manual) in all situations, and code will be clear and understandable, and this will solve error tracing