3 ms·
Completely uninformed take. Some of the most impressive update notification systems are built off of pass-as-immutable runtimes (for example: phoenix live view
by throwawaymaths 3y ago
Completely uninformed take. Some of the most impressive update notification systems are built off of pass-as-immutable runtimes (for example: phoenix live view + phoenix pubsub). Try implementing that in just about a y other language. You will trip over yourself eight ways to hell
The whole idea of CQRS is to build separate (segregated) pathways for updates. Immutable passing plays extremely well with CQRS. The alternative is the complete clusterfuck that is two way data bindings (e.g. out of the box angularjs)
- tgv 3y agoI think you both are referring to the same point: you can't update an immutable object, so you have to set up some mechanism to keep changes in sync.
- throwawaymaths 3y agoYeah, and update mechanisms are not created equal. two way data bindings suck because they elide the challenges of distributed consistency. When you're immutable, you can still delete or replace data.
- wredue 3y agoImmutability “maybe” (and that’s a massive grain a salt, because this is not a specific thing I’ve ever worked on to say any different) having certain use cases where it works well is not the same thing as making literally every single object in your entire application immutable. I agree that immutability is a tool. My issue with it is when you treat it as a rule.