Если он может доказать, что на этот объект никто не ссылается или что наоборот значение никем не меняется и его можно передавать ссылкой, то можно много чего веселого сделать
это для языка в вакууме, а как только добавляется FFI, то уже хочется прямого контроля
@psilon ты говорил что если можно без багов написать хеловорд, значит можно разбить сложную программу на много хеловордов и написать большую программу без багов, да?
йеп, для этого нужна гарантия, что если А написано правильно и Б написано правильно, то комбинация А и Б тоже правильная.
В этом и заключается, зачем нужна ссылочная прозрачность
@psilon ты говорил что если можно без багов написать хеловорд, значит можно разбить сложную программу на много хеловордов и написать большую программу без багов, да?
обычно хелловорлдов столько что само их комбинирование - не списочек, а нетривиальная программа. Это звучит красиво потому что слово "разбить" как бы предполагает что ты задизайнил и придумал как все вместе должно работать, и достаточно это "разбить" (отрефакторить). А сложность обычно как раз в том, чтоб изначально придумать из каких частей и как всю программу собрать.