前田です。

SASADA Koichi wrote:
>  いつのまにか 1.9 では Module を include したとき、ancestors に同じモ
> ジュールが重なるようになっていました。
(snip)
> 1.9 : [C2, M, C1, M, Object, Kernel, BasicObject]
>       M が2回現れる
> ########################
> 
>  結構大きな変更だと思うのですが、この仕様について何か意見がある方はいま
> せんか。

Mが2回現れるのは気持ち悪いと思うのですが、

>  導入の理由は、include したことをしっかりと影響を与えるため(上記例では
> C2 で M を include したら、C2 のメソッド m より先に M のメソッド m が呼
> ばれて欲しい、とか)ということです。

ということだと、他の選択肢は

[C2, M, C1, Object, Kernel, BasicObject]

になるのでしょうか。

>  が、個人的には同じメソッドが super によって 2 回以上呼ばれてしまうのは
> どうかな、と思っています。呼ばれても然るべき?

私も2回以上呼ばれるのはちょっとどうかなと思います。
ただ、

[C2, M, C1, Object, Kernel, BasicObject]

みたいな順番にすると、C1がMのメソッドをsuperで呼ぶことを意図していた
場合に動作しなくなりそうですね。
なので、1.8の挙動の方が好ましいような気がするのですが、この変更が原因
で動かなくなっているコードがないのなら、問題ないのかなあ。

-- 
前田 修吾