JavaScript
MicroEJ allows to develop parts of an application in JavaScript. Basically, a MicroEJ Application boots in Java, then it initializes the JavaScript runtime to run a mix of Java and JavaScript code.
It supports the ECMAScript 5.1 specification, with some limitations. You can start playing with it by following the Getting Started page.