Handling change in an immutable world