Haskell でも止まらないと思うし、 amount が負値になったら止まらなくなると思うんだけど。