Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Mutability/immutability goes pretty deep philosophically... all of those projects are basically built on persistent data structures, but persistent data structures can be seen as just one type of "making time explicit". In other words, with mutability, a variable (or data structure) takes different values at different times, while with immutability, you can still have time but you name each version through time explicitly. (Values vs. variables, etc.) Same concept exists in e.g. single static assignment (SSA) in compiler IR, or register renaming in high-performance processor design... pretty powerful concept.


As an aside: I'm pretty mind blown that I've never once considered immutability as "making time explicit". That's an extremely apt comparison.


How could I forgot SSA. The idea here is what about re-expressing things by pushing immutability at lower level as a common base.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: