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