On Mon 20 Apr 2015 04:20, Matt Wette <mwe...@alumni.caltech.edu> writes:
> The reference manual for guile 2.0.11 has an error in Section 7.6.2.5 > on rnrs lists. The statement "identical to the fold ..." is not quite > correct. The section says: > > fold-left combine nil list1 list2 . . . [Scheme Procedure] fold-right > combine nil list1 list2 . . . [Scheme Procedure] These procedures are > identical to the fold and fold-right procedures provided by > SRFI-1. See Section 7.5.3.5 [SRFI-1 Fold and Map], page 556, for > documentation. > > > In section 7.5.3.5, the manual says: > (fold cons ’() ’(1 2 3)) [...] (3 2 1) > > > But, fold-left does not work like fold: the arguments to the procedure to > fold-left are reversed with respect to fold:. > > guile i2.0.11correctly gives the following: > > (fold-left cons '() '(1 2 3)) => (((() . 1) . 2) . 3) > > (fold-left xcons '() '(1 2 3)) => (3 2 1) Gah, you're right. What a mess. Fixed in master, will backport soonish. Andy