一応、実行される順番が文法で普通でなくてもIntegerのインスタンスメソッドを呼び出しているのですよね。
電子の妖精さんが、実行順序を算数の普通に変更してくださってると、理解しときます。

それはさておき、
Fixnumは即値であるという表現がされていますが、
そのオブジェクト自身の値を変えられないのは即値であるという理由からなのでしょうか?
Bignumは即値でないそうですが、「i++」のように、値を変えても問題ないのではないでしょうか?