**Quick Summary:** Expiring "unused" accounts and contracts would improve economic transparency and reduce uncertainty (as well as the less interesting benefit of reducing blockchain state size).
How much BTC is currently permanently lost? Compare two universes: in one, 99% of old BTC is permanently lost, and in the other 1%. The difference would seem to have drastic economic implications. If we could *know* which of these two cases our universe is in, it might make the BTC economy more stable, for example by reducing some amount of exchange price volatility.
With Ethereum, there's an additional issue with respect to lost keys: what if the private keys corresponding to special addresses in contracts are lost? For example, suppose there is a contract, C, which allows privileged operations if the sender has address A, and if the world knew for certain that A's private key was irrevocably lost, then people's decisions in interacting with C would be drastically different.
Finally, some people worry about block chain bloat due to contract state. (I'm not particularly worried about this compared to the economic issues above.)
A solution to all of this would be balance / state expiry. A simple rule could be to define a cutoff block height, which is the current block height minus some constant. For example maybe this roughly equates to a year or 10 years. Now, the "age" of a non-contract account would be defined by the last block in which a transaction was sent *from* that account. If that block height is lower than the cutoff block height, then any otherwise valid send is considered invalid. In that condition, there is no way to ever spend the ETH stored in that account. Similarly contracts might have a cutoff related to when they last received a transaction (or call message). The state for such contracts is permanently unavailable after some threshold, and can thus be pruned.
Again, in my opinion the real value of this is not in blockchain size reduction, but it economic transparency.