>>>>> "L" == Lyle Johnson <lyle / users.sourceforge.net> writes:

L> It looks like the implementation of Foo#initialize should remain the 
L> same. Is there more to it than that?

 If you do this all method call must be protected to be sure that
 #initialize was called. This is what ruby do, for example, with File

pigeon% ruby -e 'a = File.allocate; a.read'
-e:1:in `read': uninitialized stream (IOError)
        from -e:1
pigeon% 


Guy Decoux