LINUX.ORG.RU

Jython 2.5

 , , ,


0

0

После нескольких лет перерыва в разработке вышла версия Jython2.5 - Java-реализации языка программирования Python. Возможности нового Jython соответствуют возможностям CPython2.5

>>> Подробности

★★★★

Проверено: boombick ()

Re: Jython 2.5

Никогда не понимал, зачем оно надо

yoghurt ★★★★★ ()

Re: Jython 2.5

>Возможности нового Jython соответствуют возможностям CPython2.5

а скорость?

k0l0b0k ★★ ()
Ответ на: Re: Jython 2.5 от yoghurt

Re: Jython 2.5

Запускать питон на мобильнике? Или там не выйдет?

Werehuman ★★ ()
Ответ на: Re: Jython 2.5 от Werehuman

Re: Jython 2.5

на симбиане и так запускают. правда памяти оно кушает столько, что ничего полезнее калькулятора у меня не вышло.

Binary ★★★★★ ()
Ответ на: Re: Jython 2.5 от yoghurt

Re: Jython 2.5

>Никогда не понимал, зачем оно надо

Например, для того, чтобы использовать те Java-либы, аналогов которых нет в питоне, либо чтобы встраиваться в уже существующие Java проекты.

И не говорите, что все java либы имеют аналоги в питоне. Например, для диплома надо работать с онтологиями, и ничего даже отдаленно похожего на Jena ни в питоне, ни в других языках пока нету.

alexey_ ()

Re: Jython 2.5

..не так что бы оно не особо было нужно..

pento ★★★★★ ()
Ответ на: Re: Jython 2.5 от pento

Re: Jython 2.5

Разработчикам оно таки надо. Мне, вот, тоже. Глядишь, еще народ подтянется. Хотя есть альтернативы и не хуже - Rhino, например. Хотя есть очень интересные Clojure и Scala.

cab ★★★★ ()
Ответ на: Re: Jython 2.5 от cab

Re: Jython 2.5

Вот тебе оно зачем?

pento ★★★★★ ()

Re: Jython 2.5

оно разве живо?

imp ★★ ()
Ответ на: Re: Jython 2.5 от alexey_

Re: Jython 2.5

Ну так и писали бы на том языке, под который данная библиотека написана.

Amp ★★★ ()

Re: Jython 2.5

дико медленная реализация.

hdclnr ()
Ответ на: Re: Jython 2.5 от cab

Re: Jython 2.5

самое главное забыли - groovy

thevery ★★★★ ()

Re: Jython 2.5

хм, сабжем ещё кто-то пользуется?

thevery ★★★★ ()
Ответ на: Re: Jython 2.5 от yoghurt

Re: Jython 2.5

>Никогда не понимал, зачем оно надо

Выполнять скрипты на Java-сервере.

KRoN73 ★★★★★ ()
Ответ на: Re: Jython 2.5 от hdclnr

Re: Jython 2.5

>дико медленная реализация.

Блин, с http://shootout.alioth.debian.org/ убрали Jython почему-то :-/

...

По памяти, у Jython пару версий назад производительность, таки, подправили. Было время, когда он тому же Perl'у сливал раз в 30. В последних версиях - быстродействие одного порядка было.

Это на числодробилке.

Надо будет на объектах пробенчить.

Ну и критический функционал в сабже всегда на Java можно реализовать.

KRoN73 ★★★★★ ()
Ответ на: Re: Jython 2.5 от Binary

Re: Jython 2.5

> на симбиане и так запускают. правда памяти оно кушает столько, что ничего полезнее калькулятора у меня не вышло.

E65 даже игрушки запускает, ЧЯДНТ ?

phasma ★☆ ()
Ответ на: Re: Jython 2.5 от hdclnr

Re: Jython 2.5

На некоторых задачах бета текущей версии вела себя лучше оригинальной.

cab ★★★★ ()
Ответ на: Re: Jython 2.5 от cab

Re: Jython 2.5

>На некоторых задачах бета текущей версии вела себя лучше оригинальной.

Покажите.

lu ()

Re: Jython 2.5

Любопытно, надо будет глянуть на досуге.
Насчет зачем оно надо - ну, если не ошибаюсь, у него нет проблемы GIT-а к примеру так сказать. Памяти правда кушает больше, насчет скорости не знаю.

Vark ()
Ответ на: Re: Jython 2.5 от pento

Re: Jython 2.5

для скриптов в жабе

cab ★★★★ ()
Ответ на: Re: Jython 2.5 от phasma

Re: Jython 2.5

>E65 даже игрушки запускает, ЧЯДНТ ?

а ещё что-то параллельно запустить удаётся? особенно, на j2me? впрочем, давно я это дело смотрел, больше дел с симбианом предпочитаю не иметь.

Binary ★★★★★ ()
Ответ на: Re: Jython 2.5 от alexey_

Re: Jython 2.5

> Например, для того, чтобы использовать те Java-либы, аналогов которых нет в питоне, либо чтобы встраиваться в уже существующие Java проекты.

> И не говорите, что все java либы имеют аналоги в питоне. Например, для диплома надо работать с онтологиями, и ничего даже отдаленно похожего на Jena ни в питоне, ни в других языках пока нету.


Так почему бы тогда на яве и не писать?

zero-1-2-3 ()
Ответ на: Re: Jython 2.5 от zero-1-2-3

Re: Jython 2.5

>Так почему бы тогда на яве и не писать?

Java требует компиляции и тяжелее реализует подмену кода на лету.

...

Грубо говоря - ты спрашиваешь, почему бы не писать сразу на Си вместо PHP или Питона :)

KRoN73 ★★★★★ ()
Ответ на: Re: Jython 2.5 от zero-1-2-3

Re: Jython 2.5

>Так почему бы тогда на яве и не писать?

Ну, например, Jython - внутренний язык WSAdmin из вебсферы и WLST из веблоджика. Можно, конечно, рулить апп.серверами и из жава-утилы, но зачем админу лезть в дебри JMX, если можно воспользоваться знакомым питоном?

leave ★★★★★ ()
Ответ на: Re: Jython 2.5 от alexey_

Re: Jython 2.5

> онтологиями

филОсоф или заИка?

alx_me ★★☆ ()

Re: Jython 2.5

Отличная новость!

Сабж используют в HP, для скриптования Ъ-жаба-энтерпрайза. И надо сказать очень даже неплохо выходит. Штука однозначно полезная: скрипты, прототипирование, кастомизация аппликух (и все остальные области применения Cpython) только для джава-мира.

xap4o ()
Ответ на: Re: Jython 2.5 от KRoN73

Re: Jython 2.5

> Java требует компиляции

И?

> и тяжелее реализует подмену кода на лету.

А зачем нужна "подмена кода на лету"?

> бы не писать сразу на Си вместо PHP

Не корректные аналогии. Сразу пейсать на Java вместо PHP - это большой позитив.

Bioreactor ★★★★★ ()
Ответ на: Re: Jython 2.5 от alexey_

Re: Jython 2.5

> Например, для диплома надо работать с онтологиями

Ну, я не "пейсатель диплома", а в реальной жизни для "жабабыдлокодинга" (с) (== нормальной денежной работы) хватает самой Джавы.

Bioreactor ★★★★★ ()
Ответ на: Re: Jython 2.5 от Bioreactor

Re: Jython 2.5

>> Java требует компиляции

> И?


Соответственно, при таком подходе конечносу пользователю понадобится уже не JRE, а JDK. Плюс придётся или натаскать его делать javac, или делать системные вызовы из Java. Вроде бы, Java нормально компилировать себя в рантайме пока не умеет :)

>> и тяжелее реализует подмену кода на лету.


> А зачем нужна "подмена кода на лету"?


Чтобы сервер не перезапускать по каждому чиху.

>> бы не писать сразу на Си вместо PHP


> Не корректные аналогии. Сразу пейсать на Java вместо PHP - это большой позитив.


Совершенно корректное для тех, кто с этим работает. Точно также можно сказать, что писать сразу на Си вместо Перла - большой позитив :)

KRoN73 ★★★★★ ()
Ответ на: Re: Jython 2.5 от Bioreactor

Re: Jython 2.5

>Ну, я не "пейсатель диплома", а в реальной жизни для "жабабыдлокодинга" (с) (== нормальной денежной работы) хватает самой Джавы.

Иногда удобнее использовать скриптовые языки, для манипуляции исходниками без перекомпиляции. Интырпрайзрый пример: логика бизнес-процессов или логика docflow. Ее удобно править без перекомпиляций/передеплоев/рестартов сервака. А уж на боевых то серваках это иногда единственный способ исправить ошибку или внести дополнение. Там рестарты/перегрузки недопустимы.

Nagwal ★★★★ ()
Ответ на: Re: Jython 2.5 от lu

Re: Jython 2.5

http://pastebin.ca/1445937 - На числодробильне лучше питона (без психа):
miha@asm3:~/tmp$ jython testheap.py
result 290068052
Time : 420
result 290068052
Time : 3247
miha@asm3:~/tmp$ python2.5 testheap.py
result 290068052
Time : 526
result 290068052
Time : 2366
Но хуже, когда работает с кучей. Хотя при работе с кучей лучший результат у Джавы - http://lj.rossia.org/users/kouzdra/664091.html (откуда я и взял тест)

cab ★★★★ ()
Ответ на: Re: Jython 2.5 от yoghurt

Re: Jython 2.5

>Никогда не понимал, зачем оно надо

Ну например что ынтырпрайз-проекты на жабе могли использовать Пайтон как скриптовый язык

DNA_Seq ★★☆☆☆ ()
Ответ на: Re: Jython 2.5 от cab

Re: Jython 2.5

> Результат далеко не в пользу jython.

В затраченное jython время включен старт JVM?

tailgunner ★★★★★ ()
Ответ на: Re: Jython 2.5 от cab

Re: Jython 2.5

>Результат далеко не в пользу jython.

Но уже намного лучше, чем раньше :) Выходит, что на объектах jython работает где-то в 2-3 раза быстрее PHP (или того же Quercus).

KRoN73 ★★★★★ ()
Ответ на: Re: Jython 2.5 от tailgunner

Re: Jython 2.5

>В затраченное jython время включен старт JVM?

Когда время теста измеряется сотнями секунд, стартап уже не играет роли :)

KRoN73 ★★★★★ ()
Ответ на: Re: Jython 2.5 от KRoN73

Re: Jython 2.5

> Грубо говоря - ты спрашиваешь, почему бы не писать сразу на Си вместо PHP или Питона :)


Кстати, тут есть 3 интересных момента
1) много работы в случае с Java за тебя делает IDE. В случае динамически типизируемых языков такого не получится.
2) Генерики в Java, на мой взгляд, удобней динамической типизации Python.
3) С Java меньше времени уходит на тестирование, чем в случае с Python.
Итого - я сейчас даже не сказал бы, что производительность моего труда на Python сильно отличается от производительности при использовании Java. А вот скорость програм и их надежность возросла. Хотя для своей ниши - мелкого и средней руки скриптинга Python удобнее.

cab ★★★★ ()

Re: Jython 2.5

Там, наверное, потоки работают нормално?

brbr ()
Ответ на: Re: Jython 2.5 от cab

Re: Jython 2.5

>1) много работы в случае с Java за тебя делает IDE. В случае динамически типизируемых языков такого не получится.

Много работы в случае Си за тебя делает IDE. В случае динамически типизируемых языков такого не получится.

>2) Генерики в Java, на мой взгляд, удобней динамической типизации Python.


Кому-то генерики и в Си++ намного удобнее покажутся. А уж если с препроцессором :)

>3) С Java меньше времени уходит на тестирование, чем в случае с Python.


Зато каждый цикл тестирования может потребовать рестарта системы. А с Питоном (PHP, Perl'ом) - поправил / посмотрел результат.

KRoN73 ★★★★★ ()
Ответ на: Re: Jython 2.5 от cab

Re: Jython 2.5

> производительность моего труда на Python сильно отличается от производительности при использовании Java

Хотя читать программы на Python, чаще приятней, чем на Java. Хотя тоже далеко не всегда.

cab ★★★★ ()
Ответ на: Re: Jython 2.5 от KRoN73

Re: Jython 2.5

>> В затраченное jython время включен старт JVM?

> Когда время теста измеряется сотнями секунд

Ну там не написано, что тест в секундах. Я думал - в милли.

tailgunner ★★★★★ ()
Ответ на: Re: Jython 2.5 от KRoN73

Re: Jython 2.5

> поправил / посмотрел результат.
Разве что в случае eval - питон не умеет во время работы программы перечитывать код

cab ★★★★ ()
Ответ на: Re: Jython 2.5 от cab

Re: Jython 2.5

>питон не умеет во время работы программы перечитывать код

Питон - не знаю. Jython - умеет. У нас в L2J/L2Fortress квесты на Джайтоне перегружались на лету.

...

Нет, я, конечно, потом и класслоадер для Java сделал с таким же функционалом, но там требовалось ещё перед каждой перезагрузкой соответствующий java-файл компилить. Получалось намного дольше.

...

Хотя тут Jython всё равно тому же Форту сливает. В Форте можно было модифицировать код прямо из командной строки клиента :) Да и быстрее Джайтона он был раз в 30. Зато компилятор ошибки ловил хуже...

KRoN73 ★★★★★ ()
Ответ на: Re: Jython 2.5 от KRoN73

Re: Jython 2.5

> В Форте можно было модифицировать код прямо из командной строки клиента :)

Такое и в лиспе можно, в т.ч. для Java-реализаций.

Кстати, Jython разучился компилировать :(.

cab ★★★★ ()
Ответ на: Re: Jython 2.5 от cab

Re: Jython 2.5

>Такое и в лиспе можно, в т.ч. для Java-реализаций.

Можно. Главное в скобках не запутаться. А то при вводе в командной строке клиента при ошибке исправить ввод нельзя, опять по-новой набивать, если что :)

А так на Форте писалось в духе:

"50 golds items-add" do-players

И всем игрокам сервера в онлайне накидывалось по 50 монет :)

>Кстати, Jython разучился компилировать :(.


Ну, я в компилирующем варианте его и не использовал. Всё равно производительность та же, а без Jython-либ полученные *.class всё равно не работают.

KRoN73 ★★★★★ ()
Ответ на: Re: Jython 2.5 от KRoN73

Re: Jython 2.5

> Jython - умеет. У нас в L2J/L2Fortress квесты на Джайтоне перегружались на лету.

Кстати, как это делал?

cab ★★★★ ()
Ответ на: Re: Jython 2.5 от cab

Re: Jython 2.5

>Кстати, как это делал?

Не помню. За эту часть системы не я отвечал, так что только краем глаза видел. Можешь порыться в сорцах - trac.balancer.ru/fortress

Там же и класслоадер на Java можешь посмотреть. Его уже я делал. Правда, только сам механизм и реилзован. На практике ничего на нём не сделали кроме тестов, команда раньше развалилась.

KRoN73 ★★★★★ ()
Ответ на: Re: Jython 2.5 от KRoN73

Re: Jython 2.5

> Соответственно, при таком подходе конечносу пользователю понадобится уже не JRE, а JDK.

Я поставляю пользователю клиентскую программу через JNLP.

На сервере приложений у меня JDK. Но это сервер приложений.

> Чтобы сервер не перезапускать по каждому чиху.

А разве надо перезапускать сервер приложений?

Bioreactor ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.