On 11/11/2010 11:24 PM, Greg Ewing wrote:
Nick Coghlan wrote:

 My personal opinion is that we should be trying to get the standard
 library to the point where __all__ definitions are unnecessary - if a
 name isn't in __all__, it should start with an underscore (and if that
 is true, then the __all__ definition becomes effectively redundant).

What about names imported from other modules that are used by
the module, but not intended for re-export? How would you
prevent them from turning up in help() etc. without using
__all__?

import foo as _foo

I believe I am not the only one who finds that practice ugly, but I find it just as ugly to underscore-ize every non-public helper function. __all__ is there for a reason, let's use it. Maybe help() could automatically ignore stuff not in __all__, or display it but warn the user of non-public identifiers?
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to