Not sure I explained this well enough. Let me elaborate just a tad. On Saturday 27 November 2004 03:06 pm, trans. (T. Onoma) wrote: | Consider: | | module M | def initialize:pre | print "A" | end | def initialize | print "M" | end | end | | class C | include M | def initialize | super | print "C" | end | end | | C.new ; puts | | what will be the output? Of course the answer is #-> AMC But why? Now consider the slight change: class C include M def initialize print "C" super end end Is the result CAM or ACM ? HTH, T.