import Data.List c n k = div ( product [ n-k+1..n] )(product [1..k]) n x 0 = 1 n x y | y < 0 = 0 n x y | x < 0 = 0 n x y = sum [ n ( x-1 - k) (y-k) * c x k | k <-[0..y] ] main = do mapM_ print $ take 10 [ map ( n x ) [1..x] | x<-[1..]]