> Do you have any insight on why that still has not been done after so many years?
I can't really speak for either V8 or SpiderMonkey but I think there are few reasons -
a) nobody got to doing it, even though it was discussed multiple times, e.g. for V8 it just was not the right time to implement it as its trying to completely revamp its optimization pipeline and certain Crankshaft idiosyncrasies make this sort of optimization pretty brittle;
b) I am not entirely sure that it will actually speedup that much code, this kind of code is rarely on an extremely hot code-path (extremely hot code paths must strive to avoid allocation entirely!);
c) there is a reasonable workaround that provides good performance (manual loop);
d) ES6 provides something better than arguments object: rest arguments.