?

Log in

No account? Create an account
entries friends calendar profile Previous Previous Next Next
с Java в нативный код - ruik-ruik! röhh-röhh!
raydac
raydac
с Java в нативный код
в принципе Java достаточно несложно транслируется в нативный код и вообще можно юзать класс файлы как промежуточный язык ( получая даже машинный код для олдскульных 8ми битных процов) смотрю появилось любопытное решение на тему трансляции с Java в код для трендовых многобитных платформ, которое позволяет даж создавать загрузчики прямиком на Java

Tags: ,

18 comments or Leave a comment
Comments
vitus_wagner From: vitus_wagner Date: September 17th, 2014 05:36 am (UTC) (Link)
Честно говоря, мне непонятно, почему этого не было сделано лет 10 назад, например в рамках проекта gcj, и не стало основным способом использования java. Как такого "меньшего и лучшего C++"
raydac From: raydac Date: September 17th, 2014 05:41 am (UTC) (Link)
может пролизводитель не дал зеленый свет, а то всеж бизнес производителя Java это стоять между программой и нативным кодом, посреднеческий бизнес у него
vitus_wagner From: vitus_wagner Date: September 17th, 2014 05:46 am (UTC) (Link)
У производителя, по-моему нет реальной возможности помешать людям это делать. Вон даже dalvik в андроиде задавить не смогли. А уж с gcj единственое что могут сделать - не давать им сертификацию. Оно, впрочем, и так насколько помню, еще до совместимости не доросло. но вот как раз компиляция в нативный код могла бы привлечь туда ресурсы, которых не хватает для создания полностью совместимого набора библиотек.
raydac From: raydac Date: September 17th, 2014 06:23 am (UTC) (Link)
в эпоху повальных сертификаций можно многое
далвик не смогли завалить потому что у него "брат боксер", не по зубам оказался
alll From: alll Date: September 17th, 2014 06:19 am (UTC) (Link)
Тогда пришлось бы признать, что jit никому не нужен, а это должно быть было крайне обидно для кого-то.
vitus_wagner From: vitus_wagner Date: September 17th, 2014 06:27 am (UTC) (Link)
Ну мало ли что для кого обидно. Когда сан вместе с джавой продался ораклу, это тоже много для кого было обидно. Капитализмьма однако.
raydac From: raydac Date: September 17th, 2014 06:34 am (UTC) (Link)
западная капитализьма штука такая, вспоминаю как когда для телеприставок делал софт, то мне заказчик гордо рассказывал что у них столько ограничений по выходу на софтоделание для этой области, что конкуренция практически исключена, фактически система брокерская ))
vitus_wagner From: vitus_wagner Date: September 17th, 2014 06:49 am (UTC) (Link)
Ну на десктопных, а тем более на серверных платформах такого нет. Полно свободных средств разработки, для Java и той существуют OpenJDK и gcj.
raydac From: raydac Date: September 17th, 2014 06:56 am (UTC) (Link)
нет, но надо смотреть с чего идут основные бабки, если основные бабки идут с энтерпрайза, то там роль играет много некапиталистических факторов, начиная от названия страны-производителя (софт произведенный турецкой конторы даже если он мегаклассный имеет очень мало шансов в сша, пока турецкая контора не заявит что она американская и не перетащит управление туда, клепая софт по прежнему в турции )) реальный случай), до кучи требований по сертификации которая как бы дает какие то надежды пользователю
vitus_wagner From: vitus_wagner Date: September 17th, 2014 08:04 am (UTC) (Link)
Не важно с чего идут ОСНОВНЫЕ бабки. Важно, есть ли достаточно ресурсов (не обязательно, кстати, бабок) в тех нишах, где хотят странного. После того как задача будет решена и решение опубликовано, энтерпрайз может кочевряжиться, как кочевряжился в свое время цепляясь за проприетарные юниксы vs linux, но в итоге никуда не денется.

alll From: alll Date: September 17th, 2014 08:16 am (UTC) (Link)
Когда обидно вам - это, естественно, мало ли что для кого. Когда обидно разработчику и по совместительству держателю цопирайта - это весьма немалое кое-что. Чтобы задавить гугловских адвокатов этого может и не хватит, но вот уже микрософтовских сановские задавили на корню, было дело.
vit_r From: vit_r Date: September 17th, 2014 06:52 am (UTC) (Link)
Насколько помню, Сан это явно запрещал.
vit_r From: vit_r Date: September 17th, 2014 06:54 am (UTC) (Link)
Проблема с компиляторами не в переводе, а в оптимизации. А так, видел лет пятнадцать назад проект, который в промежуточный код, а потом в ассемблер транслировал из многих языков, включая Модулу и Оберон.
alll From: alll Date: September 17th, 2014 08:21 am (UTC) (Link)
Вроде насчёт jit вечно поют, что он так славно оптимизирует ну прям на лету, пока пользователи чаёк попивают в ожидании разогрева сервера. Казалось бы на этапе сборки проекта это должно быть ещё проще сделать, если указать целевую платформу.
vit_r From: vit_r Date: September 17th, 2014 09:18 am (UTC) (Link)
Он хорошо оптимизирует. Если знать трюки, которые ему подсказывают, что делать, и не делать то, что сводит его с ума.

Смысла писать на Яве для кода целевой платформы никакого нет. Есть много других, более полезных языков и экосистем.
alll From: alll Date: September 17th, 2014 09:51 am (UTC) (Link)
Речь скорее не про "писать для целевой платформы", а про "компилировать для целевой платформы". Всякие QT и прочие Unity3D вроде так и делают афаик. Да и в разныж линуксах, прости господи, это вроде бы вполне себе часть мейнстримового процесса деплоймента приложений.

Языков есть много, конечно. Но программистов под эти языки мало (ну, по крайней мере всегда не хватает). Идея брать не количеством, а качеством в широких менеджерских массах по-прежнему недостаточно популярна (безотносительно к её верности и серебряннопульности).
raydac From: raydac Date: September 17th, 2014 08:40 am (UTC) (Link)
из того что я вижу в коммерческом софте на уровне сырцов - никакой компилятор, даже самый умный не сможет это оптимизировать )) так что такой проблемы на текущий момент думаю что нет, а локальные какие то мелочные оптимизации имхо и при переводе с явы в нативный код не проблема сделать
vit_r From: vit_r Date: September 17th, 2014 09:17 am (UTC) (Link)
Даже компиляторы Явы делали оптимизацию. Например, из многопоточного делали одну ветку, что резко ускоряло время выполнения.
18 comments or Leave a comment