Функциональное программирование-много внимания на рекурсии, почему?
Я знакомлюсь с функциональным программированием [FP] (используя Scala). Одна вещь, которая выходит из моих первоначальных знаний, заключается в том, что FPs сильно зависит от рекурсии. А также кажется, что в чисто FPs единственный способ сделать итерационный материал-это написать рекурсивные функции.
и из-за интенсивного использования рекурсии, похоже, следующее, о чем FPs пришлось беспокоиться, были StackoverflowExceptions обычно из-за длинных рекурсивных вызовов обмотки. Это было решаться введение некоторых оптимизаций (связанные с хвостовой рекурсией оптимизации в обслуживании stackframes и @tailrec аннотация от Scala v2. 8 и далее)
PS: обратите внимание, что я новичок в функционале программирование поэтому не стесняйтесь указывать мне на существующие ресурсы, если они объясняют / отвечают на мой вопрос. Также я понимаю, что Scala, в частности, обеспечивает поддержку для выполнения итерационных вещей.
Comments