Вдохновленный вопросом от SO: /programming/6623391/how-to-gain-control-of-a-5gb-heap-in-haskell
Это может быть долгий спор о многочисленных преимуществах и недостатках FP, но сейчас я бы хотел сузить сферу до основной эффективности FP на современном оборудовании.
Тезис:
Функциональная парадигма подразумевает неизменность и отсутствие состояния (?), Но аппаратные средства, на которых мы выполняем функциональные программы, являются конечными автоматами с состоянием. Перевод «чисто функциональной» программы в представление «с аппаратным состоянием» оставляет программисту мало контроля, приводит к накладным расходам (?) И ограничивает использование аппаратных возможностей (?).
Прав ли я или нет в сомнительных заявлениях?
Можно ли доказать, что FP не предусматривает / не накладывает принципиальных потерь на производительность в современной компьютерной архитектуре общего назначения?
РЕДАКТИРОВАТЬ: Как я уже сказал в ответ на некоторые комментарии, вопрос не в производительности реализации и деталях. Речь идет о наличии или отсутствии главных издержек , которые может принести выполнение FP на автоматах с состоянием.
running FP on stateful automata
.