Y Combinator #! /usr/bin/env python3 Y=lambda F:(\ (lambda x: (\ F(lambda y:((x(x))(y)))\ ))\ (lambda x: (\ F(lambda y:((x(x))(y)))\ ))\ ) FactGen=lambda fact:(\ (lambda n:(\ (1 if n==0 else n*fact(n - 1))\ )\ )) print(list(map(Y(FactGen),(range(1,10))))) Published: October 07 2013 category: tags: Please enable JavaScript to view the comments powered by Disqus.