in our opinion this — which we will call the "error handling problem” — remains the primary problem that we are trying to resolve.
I don't agree that this is the primary problem; it's one of many problems to resolve; Chaining (and thus not forcing temporaries), general composability, and working well with IDEs is among notable problems.
Syntactic Sugar Solution:
I think it is a stretch to call this syntactic sugar in the first place. The syntax await?
is composing await
+ ?
. In my view this is not enough semantic compression to be deserving of the description "syntactic sugar".