Здравствуйте, Ikemefula, Вы писали:
I>Необязательно. Список это например пара значение-хвост. Достаточно все операции, включая удаление, реализовать через создание нового списка. На этой же модели можно сделать целую кучу структур данных, например — деревья. Но вот хеш таблицу уже нельзя. Вместо этого делают адское дерево, где асимптотика похожа на хештаблицу и реализацию которого может понять только упоротый математик 
Да, со списками как раз все просто. Но, вот, представим себе пулю, которая каждый кадр смещается на 1 мм, и таких кадров 1000 в секунду. Каждый кадр создавать новую пулю? Конечно, тут можно сказать, что положение пули не переменная, а иммутабельная функция от времени, но это же упрощенный случай. В реальном мире у каждого объекта десятки быстро изменяющихся свойств и влияют на эти свойства десятки других быстро изменяющихся свойств, и записать поведение, например, 1000 сталкивающихся в колбе атомов газа в виде функции уже нереально. Утопия какая-то, по-моему.
I>Разумеется, это все про абсолютную чистоту. Если комбинировать подходы, что радикальный функционалисты не приемлют, получается очень даже неплохие результаты.
Наверное, да. В рендере, например, не совсем чистый функциональный подход работает отлично.