A programming language that has the semantics necessary to elegantly express a new kind of garbage collector. A rudimentary prototype of the collector, written in C++ with a terrible interface, appeared to confirm the idea.
At least, that was the initial goal. The more I investigate the design choices involved in programming languages, the more room for improvement I see.
Just wondering what “new kind” you mean, assuming you are OK discussing it. The last language with a decent garbage collector I came across was Lua, and it has a fairly granular control for garbage collection in v5.1.
Like a reference counter, it doesn’t need to run collection cycles as it knows exactly when memory can be freed. Despite this, it handles circular structures just fine.
Apart from that, there’s nothing special about it. The idea was absurdly low hanging fruit and that aspect might make it good LW post material. Assuming that it works as well as I think it does.
A programming language that has the semantics necessary to elegantly express a new kind of garbage collector. A rudimentary prototype of the collector, written in C++ with a terrible interface, appeared to confirm the idea.
At least, that was the initial goal. The more I investigate the design choices involved in programming languages, the more room for improvement I see.
Just wondering what “new kind” you mean, assuming you are OK discussing it. The last language with a decent garbage collector I came across was Lua, and it has a fairly granular control for garbage collection in v5.1.
Like a reference counter, it doesn’t need to run collection cycles as it knows exactly when memory can be freed. Despite this, it handles circular structures just fine.
Apart from that, there’s nothing special about it. The idea was absurdly low hanging fruit and that aspect might make it good LW post material. Assuming that it works as well as I think it does.