A user can buy the base version, then a few months later when you create a release that allows processing widgets through the program twice as fast, they can update for a small fee. This would force the developer to create updates that would be easy to communicate the benefits of to the consumer.
It'd be a bit more difficult to figure out pricing for new users over time and which version they receive, but it would allow they old pricing model without forgoing the benefits of incremental development over time.