Function as first class citizens in Swift

Assigning function to a variable

Passing function as an argument to another function thus creating a Higher-Order Function

Function as return type from another function