Лидеры групп Multi-language и HotSpot из компании Oracle представили (http://mail.openjdk.java.net/pipermail/announce/2012-Novembe...) предлагаемый для развития в составе OpenJDK открытый проект Nashorn, направленный на создание легковесного и высокопроизводительного движка JavaScript, работающего поверх виртуальной машины Java (JVM). Проект подразумевает использование Nashorn как в виде обособленного JavaScript-движка, способного выполнять отдельные JavaScript-приложения, так и в роли системы скриптинга, тесно интегрируемой с Java и доступной для обращения из Java-программ при помощи специального API (http://www.jcp.org/en/jsr/detail?id=223).
При разработке 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 планируется начать его доработку в области оптимизации производительности и доведения проекта до готовности для использования конечным потребителем.
URL: http://www.h-online.com/open/news/item/Nashorn-proposed-as-n...
Новость: http://www.opennet.me/opennews/art.shtml?num=35427
Лучше бы спаяли Java-процессор, отдельно себе бы работал в своей песочнице,
пущай злые хацкеры ломают регистры и тырят содержимое DDR и L1/2/3/4/5 кеша.
Уже давным давно спаяли и поняли, что нефиг фигней страдать.
Ничё ты не вкуриваешь.
аргумент, че.
Дык, Анонимы опеннета грамотней доктора наук Венского Технологического Университета: http://www.jopdesign.com/thesis/thesis.pdfАноним сказал - говно, значит говно.
все уже позабывали про j2me
> Ничё ты не вкуриваешь.Лучше честно скажи что тебе хотелось потроллить. Только это получилось жирно и беспонтово, увы, увы :)
>> Ничё ты не вкуриваешь.
> Лучше честно скажи что тебе хотелось потроллить. Только это получилось жирно и
> безпонтово, увы, увы :)Читай, лошопед http://www.jopdesign.com/thesis/thesis.pdf
зачем?
> зачем?... выполнять отдельные JavaScript-приложения, так и в роли системы скриптинга, тесно интегрируемой с Java
... добиться увеличения производительности реализаций динамических языков программирования, работающих поверх JVM.
... достигнуть полной совместимости со спецификациями ECMA-262 и ECMAScript 5.1.
Зачем?
... выполнять отдельные JavaScript-приложения, так и в роли системы скриптинга, тесно интегрируемой с Java... добиться увеличения производительности реализаций динамических языков программирования, работающих поверх JVM.
... достигнуть полной совместимости со спецификациями ECMA-262 и ECMAScript 5.1.
зачем?
Они придумали из rhino сделать JScript.NET? Зачем?
Правильно. Enterprise нужен. У хомячков и красноглазых, свободных от обязательств перед end user, этот пост может вызвать слюноотделение, но если строишь систему для конкретного конечного (специфичного в своей области деятельности/знавний) пользователя очень нужно. C++ cool если не считать стоимость решения. Производитльность, как системный программист с времен RSX11М и 2 MB, утверждаю, быстродействие и потребление ОЗУ зависят только от знания алгоритмов стандартных библиотек и иногда других, а не навыков copy/past и популярных статей в стиле Тимура Батыршинова: Java за недделю с трудоустройством. JAVA это огромный труд высококвалифицированных специалистов, идущих временами на компромисы. Готовым опровергнуть, рекомендую создать свой язык, процессор и платформу и добиться успеха, на старте хотя бы доли процентов java. Готов тогда каяться и посыпать голову пеплом. Надоело слушать бредни о JAVA...
Зачем --- хотя бы не зависить от инноваций браузероинноваций, меняющих или добовляющих неоттестированные нововведения в реализацию стандарта (не всегда соответствущую стандарту) по прихоти мифического "большенства".
Почему высказываю как "аноним" - не готов продолжать дискуссию, ввиду конкретной работы на java и отсутствия времени. Post, ввиду отдыха после успешной сдачи этапа))) в HiTec company. Наиболее близкое решение смотрите в http://www.eclipse.org/proposals/osee/.
можно было просто сказать java это интерпрайз. Вообще по хорошему нужно говорить о JVM.
> Зачем --- хотя бы не зависить от инноваций браузероинноваций, меняющих
> или добовляющих неоттестированные нововведения в реализацию стандарта
>(не всегда соответствущую стандарту)Внимание вопрос - и кому это будет нужно если оно не умеет того-же что и браузерные движки?
Тем кому нужно уметь менять кусок логики не перекомпилируя всё целиком.
> Тем кому нужно уметь менять кусок логики не перекомпилируя всё целиком.про динамическую загрузку классов Кровавый Энтерпрайз, конечно, не слышал. фигле, для Энтерпрайзных Кодеров это rocket science.
>> Зачем --- хотя бы не зависить от инноваций браузероинноваций, меняющих
>> или добовляющих неоттестированные нововведения в реализацию стандарта
>>(не всегда соответствущую стандарту)
> Внимание вопрос - и кому это будет нужно если оно не умеет
> того-же что и браузерные движки?Вы весь софт равняете на браузерные движки?
ну да, очередное "сперва добейся! тогда я..." от очередного анонима, словно он сам в одиночку создал и язык и процессор и платформу...
непробиваемая аргументация что сказать
>как системный программист с времен RSX11М и 2 MB, утверждаюФигню ты спорол - от начала и до конца. Как программист БЗ-34/ПМК-52 утверждаю.
>Производитльность, как
> системный программист с времен RSX11М и 2 MB, утверждаю, быстродействие и
> потребление ОЗУ зависят только от знания алгоритмов стандартных библиотекНа БЗ-34/ПМК-52(61) всего озу было от 90 до ста с чем то шагов, несколько стековых регистров и регистров памяти. И стандартных библиотек не было, да
Шикарно!самый изящный наброс месяца я считаю
Чем-то напоминает QML в Qt.
Скорее QtScript тогда
Лучше бы наоборот Java на Javascript сделали.
man GWT
Так, JavaScript на Java есть, ядро Линукс уже на JS делали; теперь давайте напишем на JavaScript интерпретатор Python, на нем интерпретатор PHP, через него опять JavaScript, а на нем Java. А потом форматнем диск: ведь нафиг оно надо?
это вы всё со бенефиса ваганыча прёте?
интерпретатор пхп на питоне уже есть :)
писался как исследовательский проект для мордокниги одним из команды pypy
джва года ждал.
Щас java программисты покажут Мозиле как нужно писать jit компилятор. Думаю мозиловцы много нового узнают для себя ).
>Щас java программисты покажут как нужно писать jit компилятор.А они уже давно показывают. Ларс Бак бывший ведущий разработчик HotSpot, сейчас является ведущим разработчиком V8 (javascript движок в хроме и nodejs)
Рекомендую почитать
http://stackoverflow.com/questions/5168718/what-blocks-ruby-...
> направленный на создание легковесного и высокопроизводительного движка JavaScript, работающего поверх виртуальной машины Java (JVM).Легковесного ? Высокопроизводительного ? Поверх JVM ?
/0
Легковесный это вряд ли, а вот высоко производительный вполне может быть.
JS-движок, написанный на Java даст 146% ускорения.
Потом JS на Java запустят в Java-движке, написанном на JS, и получат 146^2%.
Потом JS на Java, которая на JS, запустят на Java ...
Так человечество придет к сверхсветовым скоростям и гипердвигателям.
Что это, очередное устранение NIH синдрома? Есть же Rhino. Давно и успешно использую в своих проектах, работает.
о, кстате!это очень хорошо что есть хоть кто-то кто его использует!
можно поинтерисоваться (не троллинга ради) -- как там ведёт себя
(function () {
'use strict'
must_be_not_work = 'this will not show!' # ReferenceError
print(must_be_not_work)
})()?
# P.S.: у меня на компьютере Rhino не установленно, а вам наверно проверить это будет быстро!
эх.. проверил... результат печален :-( :-(
$ java -jar rhino1_7R4/js.jar
Rhino 1.7 release 4 2012 06 18
js> (function () {
> 'use strict'
> must_be_not_work = 'this will not show!'
> print(must_be_not_work)
> })()this will not show!
js>
> Есть же Rhino. Давно и успешно использую в своих проектах, работает.Давно — то есть ДО введения в JVM внутренней поддержки динамической типизации? Вот тебе и ответ, зачем.
> Лидеры групп Multi-language и HotSpot из компании Oracle представили предлагаемый для развития в составе OpenJDK открытый проект Nashornчто за такая эпическая слоупучность автора новости?
статья на Википедии уже не первый год --
http://en.wikipedia.org/w/index.php?title=Nashorn_%28Ja...
Хм, может оно даже и быстрое будет... Только связываться с Ораклом неохота. А то потом патенты какие-нибудь найдут, или ещё чего...
в своих продуктах -- врядли найдут (патентные нарушения:))......а вот всякие Mozilla SpiderMonkey и Google V8 -- могут оказаться вдруг ни-с-того-ни-с-сего "нарушителями" в глазах Oracle :-)
так что под патентным ударом окажутся те кто НЕ используют продкты Oracle :-D :-D ..
ну вы поняли... патентное право "ускоряет" прогресс и т д... а над нарушителями интелектуальной собственности -- будут предприняты попытки доблестного подавления -- от "ускорятелей" прогресса...
Ну, гугл один раз они преследовать уже пытались... Я скорее о том, как они давят различные производные джава-продукты и указывают, где что можно применять, где нет.А о патентном праве - это само собой...