A common pattern is for a new user to lurk as a guest for a while then register in order to post a question. If you prevent or limit that user's ability to have a conversation, even temporarily, then you have rendered the forum useless for that user. That isn't a good first impression.
As you said, we cannot stop spam. The best we can do is detect and remove it. This is why every post has a "report to moderator" link. Use it when you find spam and we can all keep the forum clean.
EDIT: Less than five minutes after I post this, a spam message gets posted. Funny.