From: Mark Hahn Date: 2001-12-06T13:57:00+09:00 Subject: [ruby-talk:27621] Re: Package Naming > Having to update a single require is cake So you are assuming you always do an include? What if you use MOD1::Mod2::Sort in the body of your code and then someone else comes out with a Mod1::Mod2::Sort? P.S. I apologize for all these messages. I am really not a religious nut about this. I just have this really bad habit of enjoying debating and getting carried away. I will try to shut up now. -----Original Message----- From: Rich Kilmer [mailto:rich@infoether.com] Sent: Wednesday, December 05, 2001 10:53 AM To: ruby-talk ML Subject: [ruby-talk:27591] Re: Package Naming David... > -----Original Message----- > From: David Alan Black [mailto:dblack@candle.superlink.net] > Sent: Wednesday, December 05, 2001 1:41 PM > To: ruby-talk ML > Subject: [ruby-talk:27589] Re: Package Naming > > > Hi -- > > On Thu, 6 Dec 2001, Rich Kilmer wrote: > > > > -----Original Message----- > > > From: David Alan Black [mailto:dblack@candle.superlink.net] > > > Sent: Wednesday, December 05, 2001 1:33 PM > > > To: ruby-talk ML > > > Subject: [ruby-talk:27587] Re: Package Naming > > > [ . . . ] > > > I'm still not getting this. I know Java does it, but still... > > > Why should software be known to its users and the system that > > > uses it by, in the first instance, its provenance? What > > > happens when someone else takes over development? Or someone > > > moves? Or.... > > > > > > > You get into refactoring hell ;) > > (from someone who had to do this MANY times) > > > So then, could we, ummmm, not do it? > Well...the problem with Java is that the packages and paths are the same. So my package imports are tied to my path. Also, wherever I use a class I have to import it because of strong typing. This is not the same for Ruby. I can 'require' one place for the whole Ruby session and the modules/classes are now in the ObjectSpace. So using files that match the domain (com/domain/library) for a 'require' does not introduce the same impact on refactoring in Ruby in the event that the domain/library (file path) needs to shift. Having to update a single require is cake compared to Java where I have to update all the import statements...everywhere I use them...ahhh...man I am glad to be coding in Ruby! -Rich