Но самое интересное, что механизм сборки мусора вроде как и не нужен.. см.
http://e-collectio …30090/eth-30090-02.pdf
Идея в том, что компонентные переменные ссылочные, но их значения нельзя присваивать друг другу как это обычно делается с указателями. Значения переменных можно либо перемещать (MOVE), тогда старая переменная становится "пустой", или же можно делать копию. Таким образом получается, что у любого компонента всегда есть только один владелец.
Поэтому сборщик мусора становится не нужен: удаление агрегата = удаление всех его компонентов. А динамические структуры (графы связей) делаются через ассоциативные индексы.
Здесь уместно вспомнить, что ассоциативные методы, да ещё и в аппаратном виде, применялись ещё в Эльбрусе для обработки ситуаций и реализации структурного(!) перехода.
(Пентковский В.М. Автокод ЭЛЬБРУС. Эль-76.)
Дам ссылку на осла, т.к.
oberoncore.ru почему-то сейчас в дауне.
ed2k://|file|%D0%9F%D0%B5%D0%BD%D1%82%D0%BA%D0%BE%D0%B2%D1%81%D0%BA%D0%B8%D0%B9%20%D0%92.%D0%9C.%20%D0%90%D0%B2%D1%82%D0%BE%D0%BA%D0%BE%D0%B4%20%D0%AD%D0%9B%D0%AC%D0%91%D0%A0%D0%A3%D0%A1.%20%D0%AD%D0%BB%D1%8C-76%20(%D0%9C%D0%BE%D1%81%D0%BA%D0%B2%D0%B0%201982%D0%B3%20350%D1%81%D1%82%D1%80).djvu|10745767|CB2482D3AD923841D3DC5A977F79EB60|/
Всё это лишний раз подтверждает, что выдающиеся решения могут быть основаны на разумном компромиссе аппаратной и программной части. И смысл в том, что в железе должны оказаться в первую очередь внеязыковые средства(или самая малая часть языка, необходимая для упорядочивания структуры), а не жаба или какая-либо ось целиком.