Возникла острая необходимость подключить внешний скрипт к текущему так, чтобы он имел доступ к переменным и функциям 
в другой функции текущего скрипта.
Собственно, рассуждая логически, внешний скрипт нужно загружать непосредственно внутри функции текущего скрипта - 
тоесть допустим имеем главный скрипт
main.js
// здесь идет произвольный код
// далее некая сразу выполняющаяся функция 
(function() {                // это главная функция
     var a = 5;
     var b = 6;
     ...
     var foo = function() { return a + b; }
/* 
и прямо здесь, допустим мы хотим подключить внешний скрипт который бы имел доступ к переменным a, b (и даже мог вызывать foo) точно так же как и foo;
тоесть подключаем его как то так:
*/
     loadScript(outerScript.js);
}();
и имеем внешний скрипт outerScript.js
/* 
в котором должен идти только тот код, который делает что то с перенными и функциями главной функции из main.js 
например:
*/
var c = foo();
var bar = function () { alert(c); }
bar(); // и получаем 11
как это реализовать???