I sort of agree about there being little reason not to implement multiple commands… so long as you come up with a design and implementation such that it’s reasonably clear to a player how to express their intent as commands and there aren’t frustrating surprises to be had in how they’re interpreted.
In Inform,. and then are equivalent, but commas aren’t. I think the way it works is that commas can be used as command separators for any number of single-word commands, but once a command is given a noun, commas cease to be eligible as command separators… until a of use . or then, whereupon they’re eligible for command separation again.
But if a command begins with the name of an in-scope person (well… an object matching CREATURE_TOKEN, which isn’t quite the same thing) followed by a comma, it’s parsed as a command telling that person to do what’s specified after the comma. But if you say alice, go north then drop wrench it’s acted upon as if you sequentially entered alice, go north and then alice, drop wrench so if Alice successfully goes north, you end up being told “You seem to want to talk to someone, but I can’t see whom.”
You can use commas in your instructions (per the same conditions noted above), but once you’ve started giving an NPC instructions, there isn’t a way to indicate you’re not giving the npc instructions anymore and you want to give a command for the player character to act upon.
I like person’s name followed by a comma as a means of giving instructions to NPCs.
But if we’re to have multiple commands on one line, I’d like to see command queues on a per actor basis such that by default you can tell Alice to go north and drop the wrench without disappointing results. And for the player to also be able to indicate that in the meanwhile they’re going south and dropping the hammer.
What exactly does that look like? I don’t think there’s an answer one could claim is intuitive, but something that’s easy to learn and remember is hopefully in reach. Maybe we say that commas and . are never command separators, that then is a command separator only when giving multiple commands as instructions to an NPC, and that ; is a command separator that also terminates instructions to an NPC. So if you have willing NPC assistants and need things to be dropped in three different places at the same time, you could say:
alice, go north then drop wrench; south; drop hammer; bob, go west then drop pliers
Or maybe something else. I’m not claiming to have the answer and I’m not attached to the details I just suggested. But if multiple commands on one line is an aspiration, I’d really like the options to include giving an NPC multiple commands (without breaking down as soon as they’re out of sight) while being able to specify commands for the player character to act upon, and for the syntax to be reasonably straightforward for the player to learn and remember.