Perhaps, instead of deleting the user, we could just change the name.
For example, on another forum I am a part of, if an inactive user has a name that someone else wants, a 1 is added to the inactive person's name. This both preserves posts and allows people to have the username they want.
How long do they have to be inactive for? Makes sense for the new person to just put the 1 in front of their name. I don't like this as an idea.
Deleting the account after a 6/12 month period is no posts are submitted I think is a very valid way of making more usernames available.