Yukihiro Matsumoto wrote: > Initializing module instance variables are one of the things I want to > fix. But I'm not sure what is the best way to fix. Maybe AOP-like > hooks is the way to go. I'm waiting the conviction to come. While AOP-like hooks can do the job, I think they are a too heavy for the task. Nontheless.... I'm not one to promote the use of :pre, :post and :wrap. As you know. I've pointed out potential snags with their use in the past, but I'll go ahead and suggest this possibility: module M def initialize:super # super is implicitly called here @var = 10 #set an instance var # initialize is now implicitly called here end end On the other hand, why get so fancy about it? A dedicated appraoch is really more appropriate --since the matter is simply one of defining a default instance value: module M instance "@var", 10 T.