public object Invoke(IObject obj, string msgname, object[] args) { Machine current = Machine.Current; try { this.machine.SetCurrent(); // TODO Review if use this.machine return obj.SendMessage(this.machine, msgname, args); } finally { Machine.SetCurrent(current); } }