Maybe this analogy will be helpful for you. We have CPU with mutable RAM. You can create immutable language on top and start arguing that you can go both ways in mutations back and forth in RAM. But this is the feature of the abstraction you applied not the core feature of "reality".