Update one object in Global Context array

Why don't you think this is optimised? In fact this is likely the fastest possible method. When you call global.set you are only storing the reference (not the whole array).

See this recent post