[plt-scheme] what is fold-left?

From: Mike Eggleston (mikeegg1 at me.com)
Date: Wed Feb 11 22:27:17 EST 2009

On Wed, 11 Feb 2009, Eli Barzilay might have said:

> On Feb 11, Mike Eggleston wrote:
> > Morning,
> > 
> > I'm looking at some code at
> > <http://funcall.blogspot.com/2007/08/naive-bayesian-classifier.html>. This
> > code by default will not run in DrScheme. The code is using (fold-left
> > ...). Looking at the function it looks like a (map ...), but I don't
> > (yet) know why I can't just use a 'map' instead of the 'fold-left'.
> > 
> > Any ideas? What does this function do that 'map' doesn't and why
> > should it be used?
> 
> It's similar to `map' except that you give it a function to accumulate
> the results.  Think of it as a generic swiss-army-knife of list
> functions.  In PLT, you have it available as `foldl'.

Wonderful. Thank you Eli. In scheme how do I alias a function so
that when 'fold-left' is called it ultimatly calls 'foldl'?

(define (fold-left &rest args)
  (apply 'foldl args))

Mike


Posted on the users mailing list.