>>69 のコードは必要ない場合までnewしてていくらなんでもNGだろう。

静的型チェックを維持したままやるなら、
ruby のコードみたいに、デフォルトの値を設定するコールバックを用意するのがスジ。