# [Integer] -> Integer

Extract the first element of a list, which must be non-empty.
Extract the last element of a list, which must be finite and non-empty.
foldl1 is a variant of foldl that has no starting value argument, and thus must be applied to non-empty lists.
foldr1 is a variant of foldr that has no starting value argument, and thus must be applied to non-empty lists.
A strict version of foldl1
The maximumBy function takes a comparison function and a list and returns the greatest element of the list by the comparison function. The list must be finite and non-empty.
The minimumBy function takes a comparison function and a list and returns the least element of the list by the comparison function. The list must be finite and non-empty.
List index (subscript) operator, starting from 0. It is an instance of the more general Data.List.genericIndex, which takes an index of any integral type.
The genericIndex function is an overloaded version of !!, which accepts any Integral value as the index.
maximum returns the maximum value from a list, which must be non-empty, finite, and of an ordered type. It is a special case of maximumBy, which allows the programmer to supply their own comparison function.
minimum returns the minimum value from a list, which must be non-empty, finite, and of an ordered type. It is a special case of minimumBy, which allows the programmer to supply their own comparison function.
The product function computes the product of a finite list of numbers.
The sum function computes the sum of a finite list of numbers.
the ensures that all the elements of the list are identical and then returns that unique element
Generates one of the given values. The input list must be non-empty.
Takes a list of elements of increasing size, and chooses among an initial segment of the list. The size of this initial segment increases with the size parameter. The input list must be non-empty.
The listToMaybe function returns Nothing on an empty list or Just a of the list.