Hey, Iâm English and itâs not easy for me to decipher ExifTools documentation - and Iâve been working with it for a number of years now 
Its not what it explicitly says but it is what it implicitly means

The documentation states that the default, if -sep is not specified, is assumed to be â,â
I just set a file using TerminalâŠ
exiftool -subject='mau égyptien,egyptian mau,chat,cat' _JNA0004.NEF
⊠and in my app I gotâŠ

It would appear that NeoFinder is misinterpreting the subject tag.
If I use the -sep argument, ExifTool reads back the subject asâŠ
[XMP] Subject : mau égyptien, egyptian mau, chat, cat
If I donât include it, ExifTool reads back the subject asâŠ
[XMP] Subject : mau égyptien,egyptian mau,chat,cat
But my app and PL5 interpret both versions correctly.
On further investigation, it would appear that, because you have chosen to put comma-separated keywords within quotes, in order to simplify the command, the subject is being written as one single âkeywordâ including the commas unless you add the -sep argument.
mau égyptien,egyptian mau,chat,cat
Now, subject is a list or array tag, but both my app and PL5 are being âsmartâ and interpreting that âsingle wordâ as a list.
It would appear that you were right in using the -sep argument but only because some apps are not as smart as others, or maybe they are too smart 
When my app writes keywords, it usesâŠ
exiftool -overwrite_original_in_place -quiet -subject='cat' -subject='chat' -subject='egyptian mau' -subject='mau égyptien'
⊠which avoids the need for the -sep argument and ensures that the subject tag is read back as a true list.
It would seem, to quote an English expression, âyou pay your money and you take your choiceâ 