main :: [sys_message] main = [ Stdout (show deg ++ ": " ++ show (map (multifac deg) [1..10]) ++ "\n") | deg <- [1..5]] multifac :: num->num->num multifac deg = product . takewhile (>1) . iterate sub where sub n = n - deg