The current model forces people to 'convince' others to open up
classes for inheritance at the precise point it is necessary. This is
a model which has served, at least, Hadoop very well.
So, I think we should not go make every member protected - rather we
should open them up one at a time, as and when necessary.
Arun
On Feb 2, 2010, at 7:34 PM, Dmitriy Ryaboy wrote:
Hi all,
I keep running into problems trying to extend Pig due to variables
being declared private. The latest time around it was in PigSlice --
one can't inherit it and do much meaningful overriding of methods
because the input streams are private rather than protected, so I
can't change how it gets created. I wound up having to copy+paste the
class wholesale, which is unfortunate. I know the Slice/Slicer
interfaces are going away, but as a general rule -- can we be mindful
of folks trying to extend classes, and make inner members protected,
rather than private or package?
Thanks
-Dmitriy