I've created library `transmutable` for performing automatic copy-on-write behavior in JS (you just write imperative code which is transformed behind scenes into immutable updates
https://npmjs.com/package/transmutable
This can avoid boilerplate traditionally associated with immutable updates in JavaScript, because you just write
This can avoid boilerplate traditionally associated with immutable updates in JavaScript, because you just write
and it returns immutable copy of original object with appropriate mutations.