This is really good: https://simonsarris.substack.com/p/that-which-is-unique-breaksI've long said/ranted that we programmers pretend we're an industry when we're really just a cottage industry. Behind this sentiment was the unspoken assumption that industrialization may one day happen, and that at the appropriate time it would be good. But now I wonder if it's even a desirable goal to aim for. Does the ability to build at scale really need to be practiced at scale? Perhaps certain things are harmed by scale.
I really like this paper which has a clear and simple reference counting system for a functional language, which ends up being surprisingly performant.https://microsoft.com/en-us/research/uploads/prod/2020/11/perceus-tr-v1.pdfThe key point is that it is fairly easy for the programmer to anticipate when memory will be freed and then immediately refused, allowing for code that effectively mutates memory in place.For example if you say;
Then you know (assuming it fits) that Y will take the place of X in memory.