go 2 has laid out the problem of error handling (Please read first). A wiki page was suggested for feedback. The feedback overwhelmingly suggested ways to not use scoped handlers, essentially creating alternative proposals
It is amazing to see the error handling problem being properly addressed. The existing proposal is good, but I think we can iterate to make it better. I think we can simplify it and address these issues:
- Defining handlers as a stack is presumptious: it forces handlers to be side-effecting, and ruins interop with
returnstatements are placed in handlers, ruining composition.
checkas a prefix function reduces code clarity.
- a new anonymous function syntax is introduced into the proposal, but only avail