From: "David A. Black" Date: 2004-03-22T08:48:17+09:00 Subject: Re: [rcr] rename append_features -> include_object Hi -- On Mon, 22 Mar 2004, Yukihiro Matsumoto wrote: > Hi, > > In message "[rcr] rename append_features -> include_object" > on 04/03/22, Simon Strandgaard writes: > > |There is a saying: avoid asymmetry > | > |we have > |extended <-> included > |extend_object <-> "append_features" > | > |symmetry would be nice in ruby2 > > But append_features does "append features" to the class/module. The > name "include_object" is quite misleading. > > I'd rather remove extend_object and append_features, which is older > than included/extended hooks. Actually included/extended is a little misleading too. You would say: A module gets included in (or by) another module. so Module#included makes sense. But you would not say: A module gets extended in (or by) another module. Rather, from the module's point of view, it's more like: A module serves to extend an object. Module#extended sounds like the Module object itself is being extended (by another module). In this case, I don't think the language should be symmetrical, because the two actions are not. I would be inclined toward something more like: Module#included # passive, included *by* another object Module#extending # active, extending another object David -- David A. Black dblack@wobblini.net