Enum


iex> odd? = &(rem(&1 ,  2) != 0)
#Function<6.50752066/1 in :erl_eval.expr/5>

iex> Enum.all?([1 , 2 , 3] , odd?)
false

iex> Enum.any?([1 , 2 , 3] , odd?)
true

iex> Enum.filter([1 , 2 , 3] , odd?) 
[1 ,  3]

iex> Enum.reject([1, 2, 3], fn(x) -> rem(x, 3) == 0 end)
[1, 2]

iex> Enum.map([1 , 2 , 3] , odd?)
[true ,  false ,  true]

iex> Enum.reduce([1 , 2 , 3] , 10 , &(&1 + &2))
16

iex> 1..100_000 |> Enum.map(&(&1 * 3)) |> Enum.filter(odd?) |> Enum.sum
7500000000

iex> x = Enum.zip([1,2,3], [5,6,7])            
[{1, 5}, {2, 6}, {3, 7}]

iex> Enum.unzip x
{[1, 2, 3], [5, 6, 7]}

iex> Enum.count([1, 2, 3])
3

iex> Enum.count([1, 2, 3, 4, 5], fn(x) -> rem(x, 2) == 0 end)
2