On Mon, Apr 27, 2020 at 12:51 PM Ethan Furman <et...@stoneleaf.us> wrote:
>
> On 04/26/2020 05:11 PM, Steven D'Aprano wrote:
> > On Sun, Apr 26, 2020 at 06:43:06PM +0200, Alex Hall wrote:
> >
> >> It's not clear to me why people prefer an extra function which would be
> >> exactly equivalent to lru_cache in the expected use case (i.e. decorating a
> >> function without arguments). It seems like a good way to cause confusion,
> >> especially for beginners. Based on the Zen, there should be one obvious way
> >> to do it.
> >
> > Indeed, and if you want to guarantee that a function is executed exactly
> > *once*, then a decorator called *once* is that Obvious Way.
> >
> > How many beginners do you know who even know what a LRU cache is?
>
> How many beginners know they want to call a function only once?
>

Perhaps they'd more ask "how can I calculate this lazily". A function
that's called only once is basically a lazily-calculated value. If you
combine @property and @once then you actually would have a lazy
attribute.

ChrisA
_______________________________________________
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/VSYL57VWDEFW4UKVWP5MGKBPLI7BKN7F/
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to