I wanted to add that it may not be so advantageous to have so many
programming languages;unlike spoken languages which actually benefit
from their diversity since they are allow humans to create entirely
new concepts.  Programming languages are somewhat restricted by how
hardware actually works and hence perform the same functions with
different ways of getting to the same result.  Perhaps one method of
dealing with the current trend of programmers being schooled in two or
more languages just to be marketable is to try to standardize the
behavior of various constructs across languages so things work more
the same across the board.  Granted this does happen somewhat
naturally already what I am postulating is that it may be advantageous
to actively try to direct this phenomena.

It would keep things like this from happenning:

a bunch of languages support += as a shorthand for incrementing accumulators

A SQL implementation comes along and does not support this relatively
common short hand..WTH Why???

Anyway that is a discussion unto itself.