Having seen @pirapira's sketch of Bamboo ( https://github.com/pirapira/bamboo/ ),
which proposed to add better control about the "smart contract program flow",
even across calls, I thought that this should certainly be added to Solidity,
and actually, it might even be possible now to a certain degree using inline assembly.
The problem is that with many functions in a contract, it is not always clear
which can be called at which stage in the contract's lifetime.
Certain smart contracts would be easier to understand if written as follows: