On Mon, Jun 01, 2015 at 02:08:13PM -0700, William Stein wrote:
> I have always viewed the public interface of a Python module to be the
> set of classes and functions that are not private, i.e., do not start
> with an underscore.  In C++/Java this distinction is even clearer
> since the word "public" (and "private") explicitly appears.
> 
> Quoting straight from the Python docs [1]: " However, there is a
> convention that is followed by most Python code: a name prefixed with
> an underscore (e.g. _spam) should be treated as a non-public part of
> the API (whether it is a function, a method or a data member). It
> should be considered an implementation detail and subject to change
> without notice."   This means to me that something that doesn't start
> with an underscore is *not* "a non-public part of the API", i.e., it
> *is* public.
> 
> Using this definition is completely unambiguous, as compared to your
> "what people use" or Volker's what's polluted the global namespace on
> startup...

This is a nice and clean definition indeed. If there is a consensus
that we can afford to go as far, this is fine with me.

Cheers,

                                Nicolas
--
Nicolas M. Thiéry "Isil" <nthi...@users.sf.net>
http://Nicolas.Thiery.name/

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to