Я пытаюсь понять основную концепцию функциональных языков:
"Основная концепция функциональных языков заключается в том, что результат функции определяется ее входом и только ее входом. Побочных эффектов не существует!"
Мой вопрос в том, что если функция производит изменения только в своем локальном окружении и возвращает результат, как она может взаимодействовать с базой данных или файловой системой? По определению, не будет ли это доступом к тому, что по сути является глобальной переменной или глобальным состоянием?
Какой наиболее распространенный шаблон используется для обхода или решения этой проблемы?