Huh... Got my interest.
Hmm, don't know how caller works, but if it uses the stacktrace like the java equivalent (anonymous Exception or SecurityManager), that key creation could be pretty slow.
hum it's seem super awesome but not sure what it does :/
lavra: It's relatively slow, but we don't create the key unless we recreate the object. It doesn't matter, in other words. However if you do need to, say, run a 1000 step iteration and cache all the results, you should just do it with manual string keys.
Separate names with a comma.