The next example only adds some boxes to make the spacing more visible:

    \documentclass{article}
    \setlength{\fboxsep}{0pt}
    \setlength{\fboxrule}{.1pt}
    \begin{document}
    $\fbox{$\fbox{$u$}^{\fbox{$\scriptstyle*$}}$}\mathpunct{\fbox{$,$}}\fbox{$x$}$
    \end{document}

> ![Boxes][1]

The spacing between the superscript `*` and the comma `,` has three causes:

- TeX adds `\scriptspace` after super- and subscripts. Default is `0.5pt` in LaTeX and plain TeX. It is the space between the box around `*` and the surrounding box.
- Inside the boxes for `*` and `*` there is some horizontal padding, called side bearings. It is a font property and not accessible in TeX.
- The superscript and the comma has a quite large vertical distance, thus there is no need to have much horizontal space to avoid the glyphs to get too close. It looks indeed better, if the comma is moved leftwards.

However, caution is needed for the negative spacing, LaTeX defines (pseudo code):

    \! = \mskip-\thinmuskip
    \thinmuskip = 3mu
    \medmuskip = 4mu plus 2mu minus 4mu
    \thickmuskip = 5mu plus 5mu

and package `amsmath` adds (pseudo code):

    \negmedspace = -\medmuskip
    \negthickspace = -\thickmuskip

`\thinmuskip` and therefore `\!` are not using stretchability, however the other
have. Then the spacing can become quite ugly, if stretching/shrinking is applied.
The negative sign causes the opposite effect making the spacing worse:

    \documentclass{article}
    \usepackage{amsmath}
    \begin{document}
      \hbox{$u^*\negmedspace,x+y$}
      \hbox spread -5pt{$u^*\negmedspace,x+y$}
      \hbox spread 5pt{$u^*\negmedspace,x+y$}
    \end{document}

> ![Streching/shrinking][2]

For this, `\!` can be used. However, `\negthickspace` and `\negmedspace` should be avoided, they cancel the effect of `\thickmuskip` and `\thinmuskip`.
`\negthickspace` and `\negmedspace`

The following macros `\negmed` and `\negthick` add a negative space in math mode using the values from `\medmuskip` and `\thickmuskip` without the stretch and shrink components:

    \def\negstrip#1 #2\relax{-#1}
    \newcommand*{\negmed}{%
      \mkern-\medmuskip
    }
    \newcommand*{\negthick}{%
      \mkern-\thickmuskip
    }

The question, how much negative spacing could be used is also partly a matter of taste. I tend to something inbetween `\!` and `\negmed`, perhaps `\mkern-3.5mu\relax`.

  [1]: http://i.stack.imgur.com/DeRZI.png
  [2]: http://i.stack.imgur.com/l05lh.png