Здравствуйте, konsoletyper, Вы писали:
K>Здравствуйте, lse, Вы писали:
lse>>Вот-вот. А почему в фп невозможны ссылки? Скажем, каждый из друзей содержит константную ссылку на машину. Эта сслыка константная (именно константная, не путать с final), т е машина не может перекрашиваться. То бишь побочные эффекты невозможны. Так почему такие ссылки невозможны в фп?
K>А потому, что нет разницы — ссылка она или копия.
Хм, и в самом деле никакой. Только вот тут такой момент есть. Представим АТД, состоящий из двух друзей, у каждого из друзей есть копия машины вместо ссылки. Тогда при изменении цвета машины нужно будет создать новый экземпляр АТД, и не забыть установить цвет машины в двух местах — у каждого из друзей. А в случае ссылки достаточно было бы изменить цвет машины один раз в одном месте. Понятно конечно, что такой подход чреват побочными эффектами, но все же в этом отдельном случае ручками поменьше работать приходится. Я уже не говорю о том, что памяти в 2 раза больше нужно для хранения экземпляра такого АТД (хотя реализация может в самом деле попытаться оптимизировать это).
PS пример машинами и друзьями дурацкий, ибо такой АТД нафиг не нужен. Но вот с кажем, моделирование конкретного технического объекта — например, электрической схемы.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>