I noticed in JQuery that the following code structure is used
(function(){var l=this,g,y=l.jQuery,p=l.$,...})()
Which seems to create a function, and call it.
What is the benefit of taking this approach versus having the contents of the function inline?
It creates a closure to prevent conflicts with other parts of code. See this:
Particularly handy if you have some other library that uses the
$()method and you have to retain the ability to use that with jQuery also. Then you can create a closure such as this: