> I don't see any reason why public
> funding should be used to support private gain.
  Public funding should support public gain.  Whether there's also
ancillary private gain is not relevant.  Public funding certainly should
not support things where all the gain is private, and large amounts of
public funding shouldn't support things with very small public gain -
computer programs that can't be used by anyone but another programmer
for his personal use, for instance.