[Python-Dev] new LRU cache API in Py3.2

Stefan Behnel stefan_ml at behnel.de
Sat Sep 4 10:28:45 CEST 2010


Hi,

reading the description of the new LRU cache in the "What's new in 3.2" 
document now, I got the impression that the hits/misses attributes and the 
.clear() method aren't really well namespaced. When I read

     get_phone_number.clear()

it's not very obvious to me what happens, unless I know that there actually 
*is* a cache involved, which simply has the same name as the function. So 
this will likely encourage users to add a half-way redundant comment like 
"clear the cache" to their code.

What about adding an intermediate namespace called "cache", so that the new 
operations are available like this:

     print get_phone_number.cache.hits
     get_phone_number.cache.clear()

?

It's just a little more overhead, but I think it reads quite a bit better.

Stefan




More information about the Python-Dev mailing list