Keith M Wesolowski wrote: > On Wed, Apr 30, 2008 at 02:14:50PM -0700, Philip Brown wrote: > >> In my opinion; yes, you SHOULD abandon the idea of Private interfaces. >> In the "new world order" of supposedly "open" solaris, the lowest case >> should be something like "unstable". > ... > > Making any level of commitment whatsoever to something explicitly > intended as nothing more than an implementation detail will make it > impossible for innovation to occur in existing projects while > discouraging future project teams from forming at all. What are you > expecting to gain that would justify that cost?
An interface, is an interface. I dont see how definining it as "private" somehow makes "innovation possible", whereas labeling it differently, somehow inhibits it. You seem to imply perhaps, "innovation" == "change", and unless an interface is declared private, then it cannot change. thus, "not private" == "no change" == "no innovation". Then what's "uncommitted" for? "uncommitted" presumably means, "this may change". An "uncommitted" interface may change. if "innovation" == "change", then "innovation" is still possible, if it is declared uncommitted instead of private. What do I seek to gain by dropping "private"? I seek to avoid the cruft and nightmares of all the "private", undocumented kernel interfaces of the past, where the sun kernel engineers decided, "well, no-one outside sun ever needs to know about these interfaces; we're the only ones that will use them". But they were dead wrong. People outside sun, wanted, and needed, to use the interfaces for years. So, what I'm saying, is that people writing opensolaris code, should no longer be allowed to stop OTHER PEOPLE, from "innovation". Declaring an interface as "private", LIMITS innovation, to the people who wrote/are in charge of the relating sections of code. Thus, my position is; ALL interfaces should be documented to some degree, and NO interface should be allowed to be called "private"