Я правильно понимаю один из аспектов функционально подхода в отношении чистых и нечистых функций? мы изолируем нечистые функции(ввод-вывод допустим) , а они уже вызывают чистую функцию, которая в свою очередь может последовательно вызвать цепочку чистых функций. таким образом изолируется "грязный" код как я понял.