Docstrings and PEP 3174
Steven D'Aprano
steve at REMOVE-THIS-cybersource.com.au
Sun Aug 1 03:16:21 EDT 2010
On Sat, 31 Jul 2010 19:52:05 -0700, Carl Banks wrote:
> PEP 3174 got me to thinking.
>
> There is now a subdirectory to deposit as many *.pyc files as you want
> without cluttering the source directory (never mind the default case).
> Which means you can pretty much write files with impunity.
>
> So I was wondering: what about a separate file just for docstrings.
I'm not sure I understand what you mean by that? Do you mean that, when
writing code for a function, you would open a second file for the
docstring? If so, a big -INFINITY from me. The biggest advantage of
docstrings is that the documentation is *right there* with the function
when reading/writing code. If you're suggesting we should write them in
another file, no thank you.
If you mean a runtime optimization with no change to the source file,
then maybe, tell me more. What I *think* you mean is that the coder would
write:
def spam(*args):
"docs go here"
pass
as normal, but when it is compiled and loaded into memory, the docstring
itself was *not* loaded until needed.
If so, then I think you'd need to demonstrate significant practical
benefit to make up for the complexity. I imagine Python-Dev will be very
dubious.
> __doc__ would become a descriptor that loads the docstring from the file
> whenever it is referenced.
"The file" being the source file, or a separate docstring file, or a
temporary file generated by the compiler, or... ?
> The vast majority of the time docstrings
> just take up memory and do nothing, so why not lazy load those things?
A guarded and provisional +0 on that. +1 if you can demonstrate real
performance (memory or speed) gains.
--
Steven
More information about the Python-list
mailing list