You Are Probably a Victim of the Largest Theft of All Time [video]
youtube.com2 pointsby Gudahtt0 comments
If you have not executed a Commercial Agreement with Neo Technology, the
Software is subject to the terms of the GNU AFFERO
GENERAL PUBLIC LICENSE
Version 3, as follows:
Then follows the AGPL license.
But it's pretty unreasonable to call it _bad design_ in a vacuum, as if there are no obstacles to a more generic design. The reason something like do-notation wasn't chosen is that nobody figured out a way to implement it without major trade-offs. So the alternative you're championing here either isn't possible within the constraints of the language, or the solution hasn't been discovered yet. The `?` operator was a pragmatic compromise.
I'm with you 100% that it is a shortcoming, but you can't really call it bad design given the reality of the situation. Compromises aren't bad design.