&gt; There is a project called Parrot VM that was an attempt to do just this, provide a generic IR format for executing dynamic languages, but it never took off, probably because it was originally tied to the tragic development of Perl 6, and thus didn’t gain traction outside of that community.<p>The parrot story was a bit different. The tragic element was new parrot maintainership who destroyed it, and not perl6. perl6 was always fine and never tragic. And perl6 always kept the lead on board, in contrast to perl5 and parrot, where they left.<p>To the point: A lot of people are writing language runtimes. 
And some of them even target multiple languages. But no one really cares about pluggable bytecode, as parrot did. rpython the only comparable one, standing against the jvm, clr and llvm. Most people care about an efficient compiler and run-time for their language. And that&#x27;s what is being done. Even more so in the last decade.
Esp. with llvm getting more and more usable for those.<p>Nowadays lua influences a lot of the smaller runtimes, btw. the spot which used to be Scheme&#x2F;your tiny lisp in the previous decades.