One of those things that I can do that makes me feel competent is to throw around buzzwords and have discussions where it’s like, “Yeah, we all know what we’re talking about here. We’re competent professionals who know what we’re talking about because we know these words.
- Avdi Grimm
... a programming paradigm that treats computation as the evaluation of mathematical functions and avoids changing state and mutable data.
- Wikipedia
"... a function definition that is not bound to an identifier.
- Wikipedia
If it has a name, it's just a function. (code)
"... the language supports passing functions as arguments to other functions, returning them as the values from other functions, and assigning them to variables or storing them in data structures."
- Wikipedia
function add_one(func_that_returns_number){
return function(){
return func_that_returns_number() + 1
}
}
This function takes a function as an argument so we call it a higher order function.
void print_secret(){
printf("Will knows all the words to Shake It Off");
}
void embarrass_will( void (*action)() ){
/*Implementation classified*/
}
int main(){
void (*embarrassing_action)();
embarrassing_action = &print_secret;
embarrass_will(embarrassing_action);
}
... a programming paradigm that treats computation as the evaluation of mathematical functions and avoids changing state and mutable data.
- Wikipedia