URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 81398
[ Назад ]

Исходное сообщение
"BicaVM - написанная на JavaScript виртуальная машина для зап..."

Отправлено opennews , 21-Ноя-11 12:40 
Представлен (http://www.surf-the-edge.com/2011/11/15/bicavm-jvm-in-javasc.../) новый проект BicaVM (https://github.com/nurv/BicaVM), в рамках которого создана реализация Java VM (JVM), написанная на JavaScript и способная выполняться в любом современном браузере.


Мотивом создания проекта послужило желание интегрировать в браузер виртуальную машину, в которой мог бы выполняться универсальный байткод. Суть идеи в том, что вместо поддержки какого определённого языка программирования в браузер предлагается добавить абстрактную виртуальную машину, которая позволяла бы организовать выполнение кода на различных языках программирования, не ограниченных одним JavaScript. В качестве достоинств такого подхода называется автоматическая изоляция кода и возможность сохранения среза состояния JVM на сервере, что позволит обеспечить независимую от браузера персистентность. Другим плюсом является обеспечение выполнения Java-программ на платформах, изначально не поддерживающих Java, например, ...

URL: http://www.i-programmer.info/news/167-javascript/3360-javasc...
Новость: http://www.opennet.me/opennews/art.shtml?num=32354


Содержание

Сообщения в этом обсуждении
"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено добрый дядя , 21-Ноя-11 12:47 
ну почему надо лепить нечто на "js, который есть у всех"?
почему нельзя некую легковесную виртуальную машину пропихнуть на уровне стандартов HTML5 или может быть HTML6?

давно назрела необходимость того чтобы браузер быстро выполнял байт код какой либо


"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Crazy Alex , 21-Ноя-11 14:50 
Потому что это прототип. Но идея хороша - JS так и так уже не читаем со своими минификациями/оптимизациями - так лучше уж вменяемій байткод, в который хотя бы компилировать удобно. А JVM - штука распространённая, языков под неё много - хоть на Эрланге пиши. Если нативно в браузер засунуть - всяко хуже джаваскрипта не будет, если научить память возвращать.

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Xasd , 21-Ноя-11 18:45 
> А JVM - штука распространённая, языков под неё много - хоть на Эрланге пиши.

допустим языков *много*... но каковО *качество* реализации этих языков?

....где мне найти НЕ УСТАРЕВШУЮ версию реализации языка Python на JVM?

..да да, я говорю про тот самый ОБЫЧНЫЙ Python который например поддерживает "Class Decorators" (PEP 3129)
..или например поддерживает коллекцию сортированных словарей (collections.OrderedDict ... PEP 372)


"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Аноним , 21-Ноя-11 16:07 
Google Dart?

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Анон , 21-Ноя-11 12:54 
Ждем компилятор ассемблера на html5.

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Аноним , 21-Ноя-11 13:17 
Ассемблер - и есть программа, преобразующая мнемоники в машинный код.
Словосочетание "компилятор ассемблера" так же безграмотно, как, например, "программирование на языке Borland C++ Builder".
Есть программы: ассемблер и линковщик, и есть язык ассемблера (язык программмы, преобразующей исходный код в мнемониках в объектный файл или сразу в исполняемый бинарник).

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Ваня , 21-Ноя-11 13:31 
Употребление термина "ассемблер" в качестве "программы-компилятора программ на ассеблере" в последний раз видел в начале 90-х.

Ассемблер - язык программирования. Компилятор преобразует текст на языке ассемблера в бинарный машинный код. Линковщик может быть частью компилятора (fasm) или внешней программой (masm, tasm, wasm, ..).


"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Вася , 21-Ноя-11 15:03 
Ассемблер - это программа-сборщик, компилятор исходного текста. Исходный текст на языке ассемблера

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Daemontux , 21-Ноя-11 16:12 
Не компилятор, а транслятор. В ассемблере нечему компилироваться это уже машинный код. Только человеко читаемый.

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Xasd , 21-Ноя-11 18:23 
> Не компилятор, а транслятор.

"не бегемот а гиппопотам"


"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено anonymous , 22-Ноя-11 03:50 
>Не компилятор, а транслятор

Не яблоко, а фрукт, ага.

> В ассемблере нечему компилироваться это уже машинный код

Да что Вы? :-D

"mov eax,1" -- это `машинный` код, который "нечего компилировать"? И процессор в Ваших кислотных фантазиях прямо так вот и берет это строку на английском языке и выполняет? Вот умора.

А вообще, если быть предельно точным и последовательным, то замечание было сделано верное: ассемблер -- это программа, транслирующая листинги на языке ассемблера в машинный код. Другое дело, что очень часто под ассемблером понимают именно язык ассемблера, что обычно понятно по контексту. Естественно, если человек не свято верит в то, что процессор способен напрямую ассемблерные текстовые листинги переварить:)


"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Мужик32 , 21-Ноя-11 15:33 
Ну что за придирки? Да, он выразился неграмотно, а вы умный. Детский сад, ей-богу.

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Andrew Kolchoogin , 21-Ноя-11 15:34 
> Есть программы: ассемблер и линковщик

Ассемблер и редактор связей. :)


"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Аноним , 21-Ноя-11 21:15 
Переводишь - так переводи полностью. Сборщик и редактор связей. Assembly это не русское слово.

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Michael Shigorin , 22-Ноя-11 00:39 
> Словосочетание "компилятор ассемблера" так же безграмотно, как, например,
> "программирование на языке Borland C++ Builder".

Ну здрасьте, у меня даже диагноз когда-то был в запаснике -- "программист на дельфи пять"... :) (только это к другому случаю -- примерно как "пользователь word 2007")


"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено анон , 21-Ноя-11 12:55 
Кто нибудь удивлен? Только честно

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Ваня , 21-Ноя-11 13:03 
Я всё жду когда в браузере на JavaScript напишут браузер на JavaScript с возможностью выполнения JavaScript.

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Lain_13 , 21-Ноя-11 13:19 
Ведро Linux в виртуальной машине написанной на JS запустить смогли. Заведи там иксы, а дальше можешь хоть фокс, хоть хромиум запускать.

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено fiskus , 21-Ноя-11 13:23 
Давно есть во всяких облачных веб-осях

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено oWeRQ , 21-Ноя-11 15:58 
С iframe каждый может.

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Crazy Alex , 21-Ноя-11 14:51 
У мозилловцев есть такой движок, предназначен для экспериментирования и прототипирования

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено анон , 21-Ноя-11 16:01 
We need to go deeper...

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Ytch , 22-Ноя-11 22:54 
>Я всё жду когда в браузере на JavaScript напишут браузер на JavaScript с возможностью выполнения JavaScript

На котором напишут браузер на JavaScript с возможностью выполнения JavaScript, на котором напишут браузер на JavaScript с возможностью выполнения JavaScript, на котором напишут браузер на JavaScript с возможностью выполнения JavaScript, на котором...


"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Клыкастый , 21-Ноя-11 13:09 
так и до рекурсии недалеко...

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Аноним , 22-Ноя-11 03:13 
PyPy уже есть :) И работает быстрее

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Клыкастый , 25-Ноя-11 15:32 
> PyPy уже есть :) И работает быстрее

PyPy это первый виток. Это неполная рекурсия! Реквестирую больше витков! :)



"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Просто прохожий , 21-Ноя-11 13:15 
Ещё один день - ещё одна поделка на JS. Мне это напоминает не решение само по себе а workaround исполнения JVM-кода без Java-плагина. Не скажу что задумка бесполезна - если где-то есть enterprise-решение с Java-апплетами, то это реальный способ предоставить доступ к ним пользователям без Java-плагина. Однако костыль как и всё остальное (pdfjs, mad... ну и другие).

IMHO
Стоило бы задуматься над интеграцией легковесной VM (например типа фреймворка LLVM) на уровне стандартов HTML. Эта мысль уже звучала. Тогда бы можно было и на С++/Ada/... весь WEB-проект написать (в том числе и клиентскую часть).


"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено добрый дядя , 21-Ноя-11 13:18 
> Стоило бы задуматься над интеграцией легковесной VM (например типа фреймворка LLVM) на уровне стандартов HTML. Эта мысль уже звучала. Тогда бы можно было и на С++/Ada/... весь WEB-проект написать (в том числе и клиентскую часть).

во, я там выше то же самое написал
лучше бы разработчики этого чуда что в новости - сделали бы нечто как библиотеку с открытым кодом и предложили на включение в HTML5+


"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Crazy Alex , 21-Ноя-11 14:53 
Да джава-машина, в общем-то, сравнительно неплоха в этом качестве - и оптимизирована всерьёз, и языков под неё куча. Но если вам LLVM - NaCl в помощь.

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Xasd , 21-Ноя-11 18:27 
> Да джава-машина, в общем-то, сравнительно неплоха в этом качестве - и оптимизирована
> всерьёз, и языков под неё куча. Но если вам LLVM -
> NaCl в помощь.

наверно вы имели ввиду не NaCl а PNaCL?? :-) ..но до релиза PNaCL вродебы ещё далеко... щаз он кажется только теоретический :-)

...а вот что есть на практике (связанного с LLVM и Web) -- это "Emscripten"


"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Аноним , 21-Ноя-11 14:32 
Во любопытно будет посмотреть как они сертифицироваться у оракакла будут... Пожалуй стоит пополнить запасы попкорна))

И да по поводу легковесной VM - идея прекрасная! Я как питонячий разраб только за!


"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Аноним , 21-Ноя-11 16:23 
>И да по поводу легковесной VM - идея прекрасная! Я как питонячий разраб только за!

Не нужны все ваши vm, пидоны и JScript. В бровзер нужен Perl и открытые сертифицированные компоненты для связи с внешними ресурсами. Сертификация на предмет того что компоненты (связь только через них) не может нанести как прямой так и косвенный вред данным пользователя, не содержит ошибок и бэкдоров. И, конечено же, все это должно быть свободным от корпорации кодом.

(с) Свободно от корпорации.


"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Xasd , 21-Ноя-11 18:30 
>>И да по поводу легковесной VM - идея прекрасная! Я как питонячий разраб только за!
> Не нужны все ваши vm, пидоны и JScript. В бровзер нужен Perl
> и открытые сертифицированные компоненты для связи с внешними ресурсами. Сертификация на
> предмет того что компоненты (связь только через них) не может нанести
> как прямой так и косвенный вред данным пользователя, не содержит ошибок
> и бэкдоров. И, конечено же, все это должно быть свободным от
> корпорации кодом.
> (с) Свободно от корпорации.

чемже этот ваш Perl принципиально лучше чем Javascript? с такимже успехом я щаз буду говорить что Perl и Javascript не нужен в браузере, а нужен только Python :-D :-D :-D


"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Аноним , 21-Ноя-11 21:16 
> чемже этот ваш Perl принципиально лучше чем Javascript?

Большим количеством фич. Именно поэтому как раз в браузере ему и не месте. Ни к чему отяжеловешивать и без того не лёгкие браузеры.


"BicaVM - написанная на JavaScript виртуальная машина для..."
Отправлено arisu , 22-Ноя-11 21:44 
> питонячий разраб

а вот тут я резко передумал. НЕ НАДО. пусть будет JS.


"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено fork , 21-Ноя-11 16:28 
Наконец-то что-то полезное сделали...

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено loader , 21-Ноя-11 16:51 
Опять не тем занимаются. Конечно это повышает их опыт написания
на js, но бесполезно все это. Когда выпустят Windows под js, вроде линукс
кернел уже запустили.

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Аноним , 21-Ноя-11 18:39 
Идиотизм, есть же Java-плагин. А minecraft взлетит?

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Xasd , 21-Ноя-11 18:50 
> Идиотизм, есть же Java-плагин. А minecraft взлетит?

идея плугинов внутри Www-страниц -- давно изжила себя. непойму почему разработчикам браузеров (хотябы Chromium и Firefox) не хватает силы-воли чтобы объедениться и вместе исключить эту технологию %) %)

запускать Java-игрушки внутри браузерного окна -- ничем не лучше, чем еслибы просто открывать эти игрушки в Standalone-виде

...ну или хотябы сделать чтобы при загрузки Www-страницы плугины не показывалисьбы сразу, а всплывал бы вопрос типа:
"внимание! данная страница содержит код активирования сторонних плугинов, этот код может быть опасным для вашего компьютера. разрешить использование этого кода? [Да], [Скрыть это сообщение]"


"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Xasd , 21-Ноя-11 19:03 
интересно то что репозиторий исходного кода (https://github.com/nurv/BicaVM) также содержит и бинарные (*.class, *.jar) файлы :-) :-)

...проприетарность технологии Java -- так и лезет из всех щелей :-)


"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Аноним , 21-Ноя-11 20:41 
А Форт-меньше памяти займет!-)

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Аноним , 21-Ноя-11 21:16 
> А Форт-меньше памяти займет!-)

Йода на нем программирует.


"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Аноним , 21-Ноя-11 21:16 
>> А Форт-меньше памяти займет!-)
> Йода на нем программирует.

Форт меньше памяти займет а.

Вот как надо было написать правильно :ROFL:


"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Frank , 22-Ноя-11 18:21 
С точностью до наоборот:
А займёт памяти меньше Форт!

"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено Аноним , 22-Ноя-11 23:06 
> А займёт памяти меньше Форт!

Форт займет меньше А памяти!


"BicaVM - написанная на JavaScript виртуальная машина для зап..."
Отправлено yurkis , 22-Ноя-11 12:08 
Серебраной пули нет! Но все равно с упорством достойным лучшего применения серебряную пулю уже в который раз пытаются сделать из говна :(

JS во все поля уже поднадоел.