Is there a difference between:
(function(){
}).call(this);
and
(function(){
})();
or
var MODULE = {};
(function(){
this.hello = 'world'
}).call(MODULE);
and
var MODULE = {};
(function(m){
m.hello = 'world'
})(MODULE);
I often see the first case in compiled javascript. They both would create a scope and do their namespacing job well.
Is there any difference or is it just a matter of taste.
Edit: And why would compiled javascript would use call over IIFE?