One major reason is that it allows languages to be mixed and to call
easily from one language to another. Free software dropped the ball
on this (Parrot), and Mono/.Net is the only widely available
implementation of this idea.