Higher order functions and functional closures

Using: higher-order functions, infix/prefix notation, anonymous functions (lambdas) and functional closures to write better code:

import Data.Char
 
-- map examples
addOne :: [Integer] -> [Integer]
addOne = map (+1)
 
remHead = map tail 
 
toString = map (:[])
 
fold op acc [] = acc
fold op acc (x:xs) = x 0111p0032(fold op acc xs)
 
sum = foldr (+) 0 
 
-- operatia de adunare, prefixata, este (+)
 
makeLower = foldr ((:).toLower) []
 
reverse :: [a] -> [a]
reverse = foldl (\acc x -> x:acc) []