Реализация Ruby и Java на JavaScript

29 апреля 2008 года

Представлены два интересных проекта, подготовленные японскими энтузиастами языка JavaScript:

  • Orto - реализация JVM (Java Virtual Machine) на языке JavaScript. Позволяет скомпилировать Java приложение в байткод, который может быть преобразован в набор JavaScript инструкций и встроен в web-страницу, с некоторым ограничением функциональности;
  • HotRuby - Ruby VM, позволяющий выполнять в браузере Ruby приложения, преобразованные в байткод, используя для компиляции YARV (Yet Another Ruby VM) из состава Ruby 1.9.

Методика примерно такая:

  • Текст Ruby скрипта размещается внутри "script type=text/ruby" блока;
  • Код инициализации HotRuby находит такие блоки, и через XMLHttpRequest отправляет на сервер;
  • На сервере CGI скрипт преобразует текст в байткод, который возвращается в виде набора JSON данных;
  • Полученный байткод транслируется в JavaScript или ActiveScript и выполняется.

Особого упоминания заслуживают результаты измерения производительности, из которых видно, что реализация Ruby VM на JavaScript ощутимо превосходит по производительности Ruby 1.8.2 (прошлая ветка Ruby):

  • Firefox 3.0b5 - 2.47 сек.
  • Firefox 2 - 6.71 сек.
  • Ruby 1.8.2 - 12.25 сек.

Источники

править


 
 
Creative Commons
Эта статья содержит материалы из статьи «Реализация Ruby и Java на JavaScript», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.