It was wise when creating the BTC specification to allow up to 8 (I think its 8 ) decimal places of divisibility. Given the natural deflation that will occur barring government intervention, its certainly better than two places of divisibility. However, a number of theoretical posts on the forums have raised the question of what would happen if that ever was not enough.
I am amazed at the two categories of answers that I see - A)"That'll never happen," and B)"Well we're screwed then." How difficult would it be in the future to modify the bitcoin specification to allow for nine, ten, or even an arbitrary number of, points precision? My guess is that it would be pretty daunting, given that the entire chain would have to change (I think?).
The second option that I can see would be a voluntary currency revaluation. In essence, we'd release a new chain and a new client. This new chain wouldn't generate any coins. However, it would be denominated in "BitCoinMillionths" or whatever, and when you imported your old BitCoin wallet, it would apply the exchange rate of 1BTC=1,000,000BTCm, and continue from there. The BTCm would be divisible to eight or ten or however many decimal places as well. Thus, people could still generate BTC with the BTC client (assuming we hadn't hit the 21,000,000 mark), but the new client would allow for greater divisibility while not modifying the underlying system. In fact, the BTCm client could generate bitcoins on the old chain according to the same rules that govern generation today, letting one program handle both issues.
What do you guys think of this idea?
Cross-posted to Tech and Dev to get a response about actually modifying the bitcoin's divisibility.