Regarding the group separators, how often do you enter them manually?
Actually never but this is totally irrelevant. The group separator will be added by Qt when you enter e.g. the value "1234" and then use the up/down or wheel button.
Visually I believe it's much easier to decode '`', ' ' or '\'' as group separators since they are clearly separable from the decimal character.
This is your personal preference and you can change this in the settings of your OS.
I do think the Quantity parser should be locale agnostic as far as possible. Otherwise, like jriegel, pointed out in a PM some time ago, scripts and material libraries written using one locale wouldn't work on a computer using an other locale. Using the python console for example to enter ``App.Units.Quantity(".03")´´ would have different meanings depending on locale which would make scripts non-portable.
I would distinguish between what is written into the console (or a Python script) and an input widget. Everything what comes from the console or a script must be the "C" locale, i.e. "." is the decimal point and "," is the item separator. A group separator doesn't exist there. Here I fully agree with you to follow the convention of programming languages. So, this means the Quantity parser should be changed that it does NOT allow "," as a decimal point or group separator but only as an item separator.
However, what you type into an input field (e.g. the two classes InputField and QuantitySpinBox) should follow the locale settings. Internally the widget reads the entered text and passes a modified, "C" locale compliant text to the parser. The only problem I still see if you want to enter something like "atan2(x,y)" into an input field. Here it won't be clear what the meaning of a "," is but if the widget forces you to write ", " (i.e. comma + space) in order to be interpreted as an item separator you can handle this. This maybe isn't the nicest solution but how often does someone enter texts like this into an input widget?