wvxvw, да нет. он нужен был не для того, что бы менять область видимости, а для того, что бы создавать анонимные функции, функционалом описанным табой

это совсем не одно и тоже.
вот вызов функции в заданном контексте:

Код:
foo.apply( this, 5 )
делигейт в конечном итоге выглядит где так:

Код:
var a:Object = this;
var xml:XML = new XML();
xml.onLoad = function() {
return foo.apply( a, arguments );
}
заменяется делегейт приблизительно так:

Код:
var a:Object = this;
var xml:XML = new XML();
xml.onLoad = function(success:Boolean):Void {
a.foo( success );
}
и никаких apply не нужно. все параметры методов известны.