TeaVM is primarily a JVM byte-code to JS (and WASM, and plain C code) compiler.
It is so effective at this, that not long ago I was able to bring a byte-code only proprietary JVM library to the web and it just worked. This thanks to an almost complete classpath library (based on Apache Harmony) and a macro system [1] that allows to produce POJO to JSON conversion code at compile time.
Salaries in most European countries have "batteries included" by design of society.
Free/cheap education from zero to graduate, free/cheap health care, free pension plan, free job security, ..., you got the point. In turn you get a beautiful, diverse, stable an extremely well connected economic/social/natural context. Some countries (I can think of Italy or the Netherlands) also offer consistent tax discounts for qualified foreigner workers/entrepreneurs moving there.
TeaVM is primarily a JVM byte-code to JS (and WASM, and plain C code) compiler. It is so effective at this, that not long ago I was able to bring a byte-code only proprietary JVM library to the web and it just worked. This thanks to an almost complete classpath library (based on Apache Harmony) and a macro system [1] that allows to produce POJO to JSON conversion code at compile time.
[1] http://teavm.org/docs/runtime/metaprogramming.html