А еще у нас есть проблема с многопоточностью в нечистых функциях. Например, джавовский Matcher (матчит регулярки) нельзя использовать в многопоточном контексте, потому что у него есть внутреннее мутируемое состояние
ну в общем мне так и не стало понятно, что для меня меняется практически, что деление не является строго чистой и плюс может приводить к переполнению алгоритмически на практике я их отношу к чистым и каноническое определение мне мало что даёт
Ну я попытался объяснить. Мой тезис был в том, что следить за корректностью программ, написанных преимущественно на чистых функциях, проще
ну в общем мне так и не стало понятно, что для меня меняется практически, что деление не является строго чистой и плюс может приводить к переполнению алгоритмически на практике я их отношу к чистым и каноническое определение мне мало что даёт
Да это дело твоё куда относить. Можно считать ее чистой и на этом предположении строить код
Да нет, мне кложа как раз нравится тем, что она гораздо ближе к программированию на чистых функциях, чем большинство других языков программирования, при этом не ставит слишком суровые палки в колеса, когда хочется сделать что-то "нечистое"
В общем, / считать нечистым это наверное радикализм (хотя конкретно в случае деления мне так не кажется, не так уж сложно обработать эту ситуацию), но общий смысл от этого не меняется