A Higher-order function is a function that does at least one of the following: takes one or more Functions as Arguments, returns a Function as its result.