On Fri, Oct 5, 2012 at 3:31 PM, Ian Kelly <(E-Mail Removed)> wrote:

> On Fri, Oct 5, 2012 at 2:19 PM, vasudevram <(E-Mail Removed)> wrote:

>>

>> http://jugad2.blogspot.in/2012/10/fm...-function.html

>

> Your fmap is a special case of reduce.

>

> def fmap(functions, argument):

> return reduce(lambda result, func: func(result), functions, argument)
In a more functional style, you could also use reduce to compose the

functions before applying them:

def compose(f, g):

return lambda x: f(g(x))

def fmap(functions):

return reduce(compose, reversed(functions))

# Allowing you to then do:

result = fmap(functions)(argument)

Cheers,

Ian