From: "David A. Black" Date: 2005-01-16T23:09:19+09:00 Subject: Re: Fwd: [suby-ruby] Your all time desired fundemental Ruby mod Hi -- On Sun, 16 Jan 2005, trans. (T. Onoma) wrote: > On Sunday 16 January 2005 07:35 am, David A. Black wrote: > | Hi -- > | > | On Sun, 16 Jan 2005, trans. (T. Onoma) wrote: > | > I'm taking a little poll. > | > > | > Let say you're Matz, but without any of the pressures of keeping up with > | > a previous version of Ruby. What one thing above all others would you > | > like to see differ about Ruby? > | > | I would be happy to see class variables (@@var) disappear. But I > | don't like the idea of class_attr_reader and things like that. Just > | use the existing attr_* methods, which Class objects already have just > | as much access to as other objects. If a Class object needs its own > | state, let it keep its own state. If it wants other objects to have > | access to it, let it give them access. > > But @@vars cut upwardly across the class hierarchy, which is a bit different. > Is that right? Please correct me if I'm wrong. You're right -- I meant to clarify that I'm talking about 2.0 class vars, which as I understand it will be truly per-class and will differ from instance variables of Class objects principally in that they will be in scope in instance methods. I would rather not have a separate construct that overlaps so much with instance variables. As for the current way class variables work... I'm not convinced that would be a big loss either. I've seen class variables arise as a source of confusion over and over again -- and while I don't mind there being things that have to be explained and that take a bit of study to grasp, the weight of experience suggests to me that there's room for refinement in this area. My chosen method of refinement would be to eliminate them :-) David -- David A. Black dblack@wobblini.net