[Python-ideas] Adding a thin wrapper class around the functions in stdlib.heapq
Steven D'Aprano
steve at pearwood.info
Tue Nov 21 19:45:06 EST 2017
On Tue, Nov 21, 2017 at 04:56:27PM -0600, Nick Timkovich wrote:
> On Tue, Nov 21, 2017 at 4:16 PM, Sven R. Kunze <srkunze at mail.de> wrote:
>
> > Maybe, that suffices: https://pypi.python.org/pypi/xheap
> >
> I still think the heapq.heap* functions are atrocious and they should
> immediately be packaged with *no additional features* into a stdlib object
> for reasons along the line of
> https://mail.python.org/pipermail/python-ideas/2017-October/047514.html
I think you pasted the wrong URL. That link is about pip, and the
discoverability of third-party libraries. It says nothing about why
functions are "atrocious" and why wrapping them into an object is
better.
But generally, Python's APIs are not "pure object oriented" in the Java
sense, and we don't needlessly create objects just for the sake of
ensuring everything is an object. Functions are fine too, and if the
only difference between a function and method is the syntax you use to
call it:
function(value, arguments)
versus
value.function(arguments)
then that's a difference that makes no difference, and there is no
advantage to using an object wrapper.
See also:
http://steve-yegge.blogspot.com.au/2006/03/execution-in-kingdom-of-nouns.html
for a perspective on how the emphasis on objects is harmful.
What advantage is there to making the heap functions into Heap methods?
--
Steve
More information about the Python-ideas
mailing list