Why so long-winded :-)? combs = mapM (enumFromTo 0) mike Lyle Kopnicky <lists at qseep.net> writes: ... > Here is the > improved version: > > combs [] = [[]] > combs (n:r) = [i:cr | i <- [0..n], cr <- combs r] ...