为什么“r”在unfoldr?

问题描述:

为什么Data.List.unfoldr中有r?是否仅仅为了与foldr对称,还是有其他原因应该被认为是正确的联想?为什么“r”在unfoldr?

当我正在考虑在Data.HashMap上展开展示时,我想到了在名称中包含r的原因。 HashMap s同时具有右侧和左侧折叠。我没有看到展开的原因比左边更合适。

+2

你可以想象一个'unfoldl'构建列表的另一个顺序。但是哪一个应该是'l'或'r'对我来说还不清楚。 :) – augustss

"The Underappreciated Unfold",在引入unfoldr,它被称为unfold(和foldrfold,因为你see here)。但是,当它进入列表库时,它已变成unfoldr,作为foldr的双重对象。

+0

本文目前位于:[低评价展开](http://www.cs.ox.ac.uk/jeremy.gibbons/publications/unfold.ps.gz) – andro