729のはちょっと古風だけど、短い例を作るときにはちょうど良いかんじだとおもうけどね。
センス云々まで行ってしまうのはちょっとカッコつけ過ぎだな。

common使うと一般には速くなるけどね。仮引数渡しは変数のサイズが決まっていてallocateしないなら
あまりメリット無い。無いわけではないけど最適化の妨げになってしまう。
全プログラムがひとつのファイルに収まっていて強引にinline出来るor
MPIやらつかって不定のサイズで分割並列化するとかでなければ
大きい配列はcommonで渡した方がパフォーマンスはいいけどね。
スイッチングやカウンタみたいな小さいサイズの変数までcommonで渡すと
デバッグしにくくなる副作用が大きすぎるから引数渡しすべきだけど、
common使うな教の狂信者になる必要はあまりないのだ。