Garrett D'Amore wrote:
Sorry, but I think that the existence of *.so files (and maybe also lint
libraries) explicitly does _not_ presume any API stability.  (Unless you
consider "unstable/uncomitted" a stability level.)

But, I do.


The only way APIs get stability is via ARC or standards body (POSIX)
approval.  All other APIs are implicitly unstable/uncommitted.

There are many levels of stability:

# Public:  (Committed, Uncommitted, Volatile, Not-an-interface)
# Private: (Sun Private, Committed Private, Consolidation Private, Project 
Private)

They all play a part in managing abstraction boundaries.  Letting
people depend with your private implementation details means that
either
   they break whenever you change your implementation, or
   you can never change your implementation.

lint files and DSO names are all associated with public interfaces.
Private interfaces should NOT provide them because they are, by
definition, an attractive nuisance.

Note that historically it has also been generally true also that
unstable/uncommitted APIs are not be documented.  Generally once an API
gets documented, it also gets subject to ARC review and also gets
assigned a stability level.

I think if you substituted "private" for "unstable/uncommitted", we would
be in complete agreement.

   -John


_______________________________________________
opensolaris-code mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/opensolaris-code

Reply via email to