I have a lot of trouble understanding this mentality.
I totally get paying when you don't have to in order to support fellow developers. I've got a nice collection of apps on my phone and desktop, all purchased, that I've acquired over the years to support my friends' development efforts. So if Marco wants to help out Macromates, that's fine. More power to him.
But I don't understand this mantra of, "We'll forgive you; just charge everyone." Let's ignore entirely whether that's a contract violation and just focus on whether it's fair.
Zoom back several years to the era Marco's talking about. TextMate 1.0 ships. It's a nice editor--really nice, actually--but it has a lot of rough edges to it. But, Allen promises, buy now anyway; upgrades through version 2.0 are completely free. So a lot of people, including me, slapped down money to buy version 1.0 on this promise. (And in my case, also to support an upstart dev who was daring to take down the 800-pound gorilla of Mac text editors, Bare Bones' BBEdit.)
But that promise never materialized. TextMate got a lot of improvements initially, but there's now a relatively large collection of third-party plugins you need just to achieve parity with the now-native versions of Vim and Emacs that can be had for free.
And in exchange for not shipping anything for literally years, you want to reward him by paying him more?
What am I missing here?