It's actually simpler then that
hi = len(a) if hi is None else hi hi = len(a) if hi is None else hi(In the concrete example, both versions use mutation.)
You can get examples equivalent to the proposed None-coalescing ?? operator does that don't use mutation, though.