>>> concatMap (take 3) [[1..], [10..], [100..], [1000..]] [1,2,3,10,11,12,100,101,102,1000,1001,1002]
>>> concatMap (take 3) (Just [1..]) [1,2,3]
concatMap f xs == (concat . map f) xs
>>> concatMap (\i -> [-i,i]) [] []
>>> concatMap (\i -> [-i, i]) [1, 2, 3] [-1,1,-2,2,-3,3]
>>> concatMap ('replicate' 3) [0, 2, 4] [0,0,0,2,2,2,4,4,4]
>>> concatMap f = Stream.concatMapM (return . f) >>> concatMap f = Stream.concatMapWith Stream.serial f >>> concatMap f = Stream.concat . Stream.map f