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?
Comet is likely the library you're looking for. It will also be the foundation of the MVU pattern MAUI will support, and that @sevenate was referring to.