I was under the impression that a catch-all wasn't originally intended to catch aliases created on the fly, but was to ensure delivery of
- incorrectly addressed emails (eg 'mike@example.com' instead of 'michael@example.com') where the domain name is correct
- generic email addresses (eg 'webmaster@example.com', 'sales@example.com', etc)
Using catch-alls for aliases created on the fly just seems to be a handy exploitation of the original idea.