I'm looking into the possibility of implementing an MVU pattern in a Xamarin app using C#. This mostly seems to hinge on the immutability of the model being provided to the view and the Update
function that will keep producing a new model whenever the model needs to be changed.
Is it possible in C# to properly achieve this without implementing some sort of deep copy if the model might contain reference types?
I'm aware that frameworks like Fabulous exist for doing this in F# but I'm just trying to understand if C#'s lack of support for immutability means it isn't possibly to implement a pure form of MVU without resorting to implementing some sort of deep copy operation?