Really nice, Mat
Solution 1:
Yes, it is. The name is technically an interjection and must be separated by commas. Whether it is at the beginning of the sentence or the end, it must be separated off.
Another reason is because commas save lives.
It's time to eat Mat.
Here, we're having fried Mat wrapped in noodles for supper.
It's time to eat, Mat.
Here, we're having supper with Mat. It can make a large difference in the meaning.
Solution 2:
The comma is required. This shouldn't be subjective. For example, there is a difference between "how are you my old friend" and "how are you, my old friend." I hope readers can see the difference.
For the case of "thanks john, " the same rules as illustrated in the above window apply. There is actual meaning or grammatical reasoning for the the comma. People often say it goes where a speaker would pause, but that is merely a tip to where it should be placed for young readers.
My sister is a grammarian, professor of english literature, and a librarian. She always said that just because other people drop the comma doesn't mean it is right. This goes for the "in work emails" example everyone uses. In work emails most people also do not put a period after "Thanks, John." They either put a comma or nothing, which are both so grammatically wrong if you press enter and start your paragraph with a capitalization.
Solution 3:
The comma is required. Sentence 3, below, follows the same pattern as 1 and 2, in which the comma is obviously required:
- Thanks for asking, Mat.
- Thanks, Mat, for asking.
- Thanks, Mat.