ara.t.howard wrote:
> yeah i see all that.  still, i've deigned quite a few ruby classes and i 
> can assure people that they will miss them when they are gone/limited.  
> the reason, curiously, is that classes do not have an initialize 
> method/hook.  let me explain: let's say you want to do something quite 
> reasonable like so
> 
>   class Parser
> 
>     def self.bufsize(*value)
>       value.size == 0 ? @@bufsize : self.bufsize=(value.first)
>     end
> 
>     def self.bufsize=(value)
>       @@bufsize = Integer value
>     end
> 
>     bufsize 4242
> 
>     def initialize options = {}
>       @bufsize = options[:bufsize] || @@bufsize
>     end
> 
>   end
> 
>   Parser.new

But this still works with ruby1.9! And it works in subclasses too. As 
long as @@bufsize is within the lexical context of Parser, it works just 
like 1.8. The difference is only if you try to use @@bufsize within the 
(lexical) scope of a subclass.