in reply to pushing arrays gives unexpected result

You could of course just do @out = (@out, @newin);.