@wakame JVM has some major design problems that compromise its applicability for various uses, both embedded and not.
It has a *lot* of very questionable and Java-centric choices.
BEAM is *very* domain-specific and doesn't really care for much outside of its domain.
CLISP's VM is CLISP-only.
Guile's VM is... actually not bad on desktops and supports a bunch of languages. Similarly for Racket/Chez's.