Я вижу здесь , что помимо Java существует множество языков, которые работают на JVM. Я немного озадачен всей концепцией других языков, работающих в JVM. Итак:
В чем преимущество наличия других языков для JVM?
Что требуется (в терминах высокого уровня) для написания языка / компилятора для JVM?
Как вы пишете / компилируете / запускаете код на языке (отличном от Java) в JVM?
РЕДАКТИРОВАТЬ: Было 3 дополнительных вопроса (изначально комментарии), на которые был дан ответ в принятом ответе. Они перепечатаны здесь для разборчивости:
Как приложение, написанное, скажем, на JPython, будет взаимодействовать с приложением Java?
Кроме того, может ли это приложение JPython использовать какие-либо функции / объекты JDK ??
Что, если это был код Jaskell, не сделал бы тот факт, что это функциональный язык несовместимым с JDK?