Hacker News new | ask | show | jobs
by ohf 2976 days ago
I would actively avoid that, but only because it confuses me.

That syntax loosely implies that removing the second d assignment would allow me to create new-but-altered dogs with alterDog(Dog), which isn't the case. If I wanted to use assignments like that, I would try to go fully immutable with factory methods that help me make slightly different, new dogs on the fly, and return them.