He's not wrong. You're displaying a semicolon delimited list on its own, and thinking a space improves it grammatically. That's just silly. Don't think of it as nastiness, think of it as a response to frivolous pedantry. So please don't try to make false comparisons between written language and data syntax. It's out of place and wrong-headed.
Instead, learn about how you can use the expression language....
Why don't you try something like this, which should satisfy you completely:
The artists are Listitem([Artist],0,;) and Listitem([Artist],1,;).
The point is if you don't like the way something is displayed in MC, you can change it - if you take the time to learn. I'm sure that, as an English teacher, you often run into students who just want to be given the answer, instead of trying to learn the underlying concepts that will enable them to achieve success not only with their current problem, but with future undertakings as well.
By using the ListItem function, you can extract data elements from the list, manipulate them however you choose, and insert them back into a string suitable for display in any situation, no matter what your requirements. The MC Expression Language performs data processing, and does not conform to any rules other than its own syntactical structure. English grammar is irrelevant. It's data in, and data out. You can choose to make the data output look as much like English as you'd like, as my example above demonstrates.
My example outputs an English-language sentence because the MC parser treats anything not recognized as an expression as literal text to be quoted.
In the MC Expression Language, the / character functions as a type of quotation character, or escaped literal in data processing parlance, that ensures that the character that follows it, a space in that case, is processed literally by the interpreter. In the case Rod provided, it has the effect of adding a space to the output.
Have fun...