Nashorn
Тип | рушій JavaScript |
---|---|
Розробник | Oracle Corporation |
Версії | 15.3 (1 липня 2021)[1] |
Платформа | Java Virtual Machine |
Операційна система | крос-платформовий |
Мова програмування | Java |
Стан розробки | активний |
Ліцензія | GPL з винятками зв'язування |
Репозиторій | github.com/openjdk/nashorn |
Вебсайт | openjdk.java.net/projects/nashorn/ |
Nashorn — легковагий і високопродуктивний рушій JavaScript, котрий працює поверх віртуальної машини Java (JVM). Проект передбачає використання Nashorn як у вигляді відокремленого JavaScript-рушія, здатного виконувати окремі JavaScript-застосунки, так і в ролі вбудовуваної системи скриптинга, тісно інтегрованої з Java і доступної для звернення з Java-програм за допомогою спеціального API.
При розробці Nashorn задіяні нові механізми JVM (наприклад, API MethodHandles і InvokeDynamic), що дозволяють домогтися збільшення продуктивності реалізацій динамічних мов програмування, що працюють поверх JVM. З сирцевого коду JavaScript генерується проміжне представлення AST (Abstract Syntax Trees), на основі якого за допомогою спеціального компілятора буде формуватися байткод для виконання під управлінням JVM. Nashorn базується на JSR 292 та став доступним у Java 8 від березня 2014 року.[2] Проект вперше було оголошено на JVM language summit в липні 2011.[3][4]
- ↑ Release 15.3 — 2021.
- ↑ Laskey, James (July 2011). Adventures in JSR-292 or How To Be A Duck Without Really Trying (PDF). Oracle Corporation. Архів оригіналу (PDF) за 3 червня 2016. Процитовано 24 липня 2011.
- ↑ JVM Language Summit — Agenda. Oracle Corporation. July 2011. Архів оригіналу за 19 серпня 2011. Процитовано 24 липня 2011.
- ↑ Saab, Georges (19 липня 2011). JVM Language Summit: Moving Java Forward, aka ‘Pointy haired manager talk’ (PDF). Oracle Corporation. Архів оригіналу (PDF) за 14 липня 2013. Процитовано 24 липня 2011.