Компания Oracle выпустит открытый JavaScript–движок на базе виртуальной машины Java

Опубликовано: 29 ноября 2012 г., четверг

Лидеры групп Multi–language и HotSpot из компании Oracle представили предлагаемый для развития в составе OpenJDK открытый проект Nashorn, направленный на создание легковесного и высокопроизводительного движка JavaScript, работающего поверх виртуальной машины Java (JVM). Проект подразумевает использование Nashorn как в виде обособленного JavaScript–движка, способного выполнять отдельные JavaScript–приложения, так и в роли встраиваемой системы скриптинга, тесно интегрируемой с Java и доступной для обращения из Java–программ при помощи специального API.

При разработке Nashorn будут задействованы новые механизмы JVM (например, API MethodHandles и InvokeDynamic), позволяющие добиться увеличения производительности реализаций динамических языков программирования, работающих поверх JVM. Из исходного кода JavaScript планируется генерировать промежуточное представление AST (Abstract Syntax Trees), на основе которого при помощи специального компилятора будет формироваться байт–код для выполнения под управлением JVM.

В результате развития проекта разработчики намерены достигнуть полной совместимости JavaScript–платформы Nashorn со спецификациями ECMA–262 и ECMAScript 5.1. Примечательно, что в недрах Oracle уже подготовлен рабочий прототип JavaScript–движка, который успешно проходит все проверки тестовым комплектом ECMAScript test262.

Код указанных наработок планируется открыть под лицензией GPLv2 и передать сообществу OpenJDK, если оно одобрит принятие проекта под своё крыло (голосование уже началось и продлится до 6 декабря). После передачи кода в руки OpenJDK планируется начать его доработку в области оптимизации производительности и доведения проекта до готовности для использования конечным потребителем.

Источник: OpenNET
Копировать, распространять, публиковать информацию портала News.lt без письменного согласия редакции запрещено.

Комментарии Facebook

Новый комментарий


Captcha

статьи по схожей тематике

Google официально представила операционную систему Android O

Компания Google официально представила на конференций I/O новую операционную систему Android O, подробно рассказав о возможностях главного конкурента программной платформы Apple. дальше »

Истёк срок действия патентов на MP3

В конце апреля истёк срок действия последнего патента (US6009399A), затрагивающего формат цифрового кодирования звука MP3. дальше »

Red Hat в третий раз наградила выдающихся женщин в мире Open Source

Компания Red Hat на своём саммите в Бостоне объявила обладательниц ежегодной премии 2017 Women in Open Source Awards. дальше »

Статистика операционных систем и браузеров за апрель 2017

11 апреля Microsoft начала распространять обновление системы Windows 10 Creators Update, что ожидаемо привело к увеличению её доли рынка. дальше »

Xiaomi Redmi Note 4X получил MIUI 8 на базе Android 7.0 Nougat

Как известно, смартфоны Xiaomi предлагаются покупателям с предустановленной фирменной прошивкой MIUI, созданной на основе мобильной операционной системы Android. дальше »

Android разработчики могут подгонять приложения под разные экраны

Компании Samsung и LG выпустили смартфоны с нестандартным соотношением сторон. Так, LG G6 использует экран 18:9, а Samsung Galaxy S8 имеет соотношение 18,5:9. дальше »

Facebook представила Canvas API

Социальная сеть Facebook объявила о запуске Canvas API - полноэкранного мобильного приложения, которое позволяет компаниям и авторам рассказывать в родной среде после клика (post-click environment) о темах, предназначенных для взаимодействия со зрителями. дальше »

Началось распространение версии Android 7.1.2 Nougat

Компания Google запустила обновление операционной системы Android 7.1.2 Nougat в своей финальной версии. Об этом стали сообщать многочисленные пользователи, не участвовавшие в бета-программе. дальше »

Apple неожиданно выпустила обновление iOS 10.3.1

Компания Apple выпустила обновление своей мобильной платформы — iOS 10.3.1 спустя лишь неделю после довольно крупного релиза iOS 10.3. дальше »