> > def initialize > > @prop1 = LazyLoad.new{:it_works} > > @prop2 = LazyLoad.new{:nothing} > > end > > Ah, careful. Every method call on @prop1 or @prop2 would > rerun the block. You won't notice any problems if all the > block does is return a symbol, but for anything more complex > ... well, see my last email. Yeah, true. Bad example. The original code (the branches) uses a common method "load" which sets both properties. If one of them is used, the other gets set as well. No problem there. gegroet, Erik V. - http://www.erikveen.dds.nl/