Only Jonathan seems to want to do it differently. We are trying to find out exactly why he prefers this approach. So far the only advantage I have seen is that it is easier to experiment with.
I think it's good to make experiments before making a decision. That's where I'd like us to do next. Let's learn from shared experience.
By the way, using
>>> d[o(1, 2, a=3, b=4)]
for a suitable 'o' and item function decorator has I believe all the capabilities of any scheme proposed (for a suitable 'o' and decorator).
I'd rather make my case by doing experiments using various values of 'o' (and the associated function decorator).