David Mertz wrote:
> I have definitely hit this difficulty many times. The part of the code that
> "just puts something in the collection" doesn't need to care conceptually
> about the kind of collection. Taking the data back out somewhere else more
> often needs to worry about order, efficiency, concurrency, etc.
> But as I see other comments, I think an external function makes more sense.
> Sure, list and set could grow a common method. But then what about deque or
> queue? What about the excellent third part sortedcontainers package? Or a
> Panda Series? Do all of these need to grow that same method?
> I think more flexible would be a callable that also provided a way to
> register how to "just put the item in the container." This could be
> expanded by users only as far as was useful to them.
> Sufficiently refined, I can imagine wanting such a thing in the collections
> module itself.
> So maybe an API like:
> just_add_it.register(set, set.add)
> just_add_it.register(list, list.append)
> just_add_it.register(Queue, Queue.put)
> just_add_it.register(MyCollection, lambda stuff, item: ...)
> # Later
> just_add_it(the_things, item)
> Then a user can decide where to weigh issues like sets not allowing mutable
> objects or queues being finite size.
> On Sun, Oct 13, 2019, 5:22 PM Steve Jorgensen ste...@stevej.name wrote:
> > IMO, the problem with the "you can create your own"
> > solution is that this
> > is such a common thing that it seems like it should simply be present
> > rather than having a vast number of applications and libraries each
> > implementing their own unique solutions.
> > 
> > Python-ideas mailing list -- python-ideas@python.org
> > To unsubscribe send an email to python-ideas-le...@python.org
> > https://mail.python.org/mailman3/lists/python-ideas.python.org/
> > Message archived at
> > https://mail.python.org/archives/list/python-ideas@python.org/message/FUUZZ6...
> > Code of Conduct: http://python.org/psf/codeofconduct/
> >

How about `push_item(collection, value)` as the method name/signature?
_______________________________________________
Python-ideas mailing list -- python-ideas@python.org
To unsubscribe send an email to python-ideas-le...@python.org
https://mail.python.org/mailman3/lists/python-ideas.python.org/
Message archived at 
https://mail.python.org/archives/list/python-ideas@python.org/message/N5KY4BK5ZVEUJCYZLVAXTW7P23A4JA4A/
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to