The problem with this in strict languages is that we keep needing lazy annotations.
And the other problem is that this won't be very fast in strict languages.
In strict languages there is probably no caching of the function calls.
What this means is comparing a recursive dictionary to a static dictionary, the recursive dictionary is going to be slower depending on how many function calls there are. In fact the slow down may be linear to the number of self
or that
function calls.
It would work great for IoC containers though if the function calls could be cached.