On Jan 15, 2008, at 3:43 PM, David A. Black wrote: > > I guess it would have that effect, but I've seen lots of instance > variable initialization in classes that might be subclassed, and I > don't remember ever seeing a conditional one. > there is one in that very file ;-) 431 # SortedSet implements a set which elements are sorted in order. See Set. 432 class SortedSet < Set 433 @@setup = false 434 435 class << self 436 def [](*ary) # :nodoc: 437 new(ary) 438 end 439 440 def setup # :nodoc: 441 @@setup and return 442 443 module_eval { 444 # a hack to shut up warning 445 alias old_init initialize 446 remove_method :old_init 447 } 448 begin 449 require 'rbtree' 450 451 module_eval %{ 452 def initialize(*args, &block) 453 @hash = RBTree.new 454 super 455 end 456 } and still no RBTree in the stdlib ;-( a @ http://codeforpeople.com/ -- we can deny everything, except that we have the possibility of being better. simply reflect on that. h.h. the 14th dalai lama