Higher-Order Functions was the next topic. A Higher-Order function is basically a function that accepts another function as an argument and returns a function as a result. The function passed is sometimes referred to as the Callback. This should not be confused with First-Class Functions that can also pass a function as an argument to other functions and can be returned by another function. I know, it can get quite complicated.