我正在寻找一些非常简单、易于理解的递归方案和核心递归方案(catamorphisms、anamorphisms、hylomorphisms 等)的解释,这些解释不需要遵循大量链接或打开类别理论教科书。我确信我已经无意识地重新发明了许多这些方案,并在编码过程中将它们“应用”在我的脑海中(我相信我们中的许多人都有),但我不知道我的(共同)递归方案是什么使用被称为。(好吧,我撒了谎。我刚刚读到其中一些,这引发了这个问题。但在今天之前,我不知道。)
我认为这些概念在编程社区中的传播受到了人们往往会遇到的令人生畏的解释和示例的阻碍——例如在维基百科上,但也在其他地方。
它也可能被他们的名字所阻碍。我认为有一些替代的,更少的数学名称(关于香蕉和铁丝网的东西?)但我也不知道我使用的递归方案的更简洁的名称是什么。
我认为使用具有表示简单现实世界问题的数据类型的示例而不是抽象数据类型(例如二叉树)会有所帮助。