in reply to Recreating an object from its own method

Don't shift, then assign to $_[0].