:: (html_element -> [html_element]) -> ([html_element] -> [html_element])

Map a function returning a list over a list and concatenate the results. concatMap can be seen as the composition of concat and map.
concatMap f xs == (concat . map f) xs
>>> concatMap (\i -> [-i,i]) []
[]

>>> concatMap (\i -> [-i,i]) [1,2,3]
[-1,1,-2,2,-3,3]
Map a function over all the elements of a container and concatenate the resulting lists.

Examples

Basic usage:
>>> 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]
Map a function over all the elements of a container and concatenate the resulting lists.
Same as >>=, but with the arguments interchanged.
For chaining monadic operations in forward applications using (&) Named version of =<<.
>>> Just [ 1 :: Int ] & chainedTo (viaNonEmpty head)
Just 1

>>> Nothing & chainedTo (viaNonEmpty head)
Nothing
(=≪) = (=<<) (U+3D, EQUALS SIGN) + (U+226A, MUCH LESS-THAN)
Map a function over a vector and concatenate the results.
Compose two power series where the outer series can be developed for any expansion point. To be more precise: The outer series must be expanded with respect to the leading term of the inner series.
Apply a shrinking function to a generator. This will give the generator additional shrinking options, while keeping the existing shrinks intact.
Genereralized concatMap For List l => (a -> l b) -> l a -> l b use =<< (monadic bind)
A version of mconcatMap that works with a monadic predicate.
Maps a splice generating function over a list and concatenates the results. This function now has a more general type signature so it works with both compiled and interpreted splices. The old type signature was this:
mapSplices :: (Monad n)
=> (a -> Splice n n)
-> [a]
-> Splice n n