何故appendするとappend後のものを返すんじゃなくて元データが変更されるのか