I was thinking that maybe the name "Immediately Invoked Function Expression" is incorrect, because, in fact, what we do is invoke an anonymous function declaration, so the correct name could be IIFD (Immediately Invoked Function Declaration).
What do you think? Make sense?
// function declaration
function add( a, b ) {
return a + b;
}
// function expression
var multiply = function( a, b ) {
return a * b;
}