A long-time favorite example reminds us writers why we have to set off the name (or title, or group name, whatever) of the person being talked to. There’s a major difference between Let’s eat, Grandma! and Let’s eat Grandma!
Some of us could use a refresher course in using commas to separate any direct address--that’s one character speaking (or writing) directly to somebody.
Use commas to separate the name, title, or other words used in direct address--using a name, or a name substitute, when speaking to that person.
It doesn’t matter if the direct address is to a single person, a small group, a multitude, or even a non-physical concept. It also doesn’t matter if you’re using full names, proper names, job titles, terms of respect, derogatory terms, formal titles, nicknames, phrases to describe or identify a group, etc.
Hi, Sarah!
Honey, you’re home early. Dinner’s not ready.
I’m going out to eat, dimwit. Remember?
Mr. Smith, your table is ready.
Yes, your Honor, I killed him.
All right, you in the press box, let’s settle down.
Hey, dude, what's wrong?
Use one comma if the direct address appears at the beginning of the sentence.
Mr. Smith, I need your keys.
Honey, where's my blue tie?
Man, you just don't get it.
Use one comma if the direct address appears at the end of the sentence.
I need your keys, Mr. Smith.
Where's my blue tie, honey?
You just don't get it, man.
Use two commas if the direct address appears anywhere else in the sentence.
I need your keys, Mr. Smith, for the valet service.
Where's my blue tie, honey, or the brown one?
You just don't get it, man, or you'd go along on this.
It has to be a comma (or two). Not ellipses if the speaker is to pause. Not a period. Not a colon. Not a dash or a hyphen or extra blank space.
To test whether a name is used as a direct address, see if the sentence still makes sense--and the same sense--without it. If it does, then the use of the name is direct address.
Maryn, who has a hand-out on this, too