Jython

15 respostas
wellington7

Quem conhece, dê seu parecer.
É bom? É ruim? Ajuda alguma coisa aprender isso? :slight_smile:

15 Respostas

cv1

JRuby :wink:

faq

Se a idéia é aprender uma linguagem moderna vale a pena sim, mais ainda vale aprender python (versão 2.5).

Se a idéia é utilizar uma linguagem moderna na java, ai eu recomendaria jruby também.

roadhouse

marketeiro! :smiley:

cv1

marketeiro! :smiley:

Shhhhhhh! :mrgreen:

ViniGodoy

Eu usei aqui e fiquei decepcionado. Acabamos optando por Groovy.

Primeiro, se um script importa outro que tem um trecho executável, esse trecho será executado automaticamente, na carga do script. Isso é um padrão do python que, ao meu ver, pode ser arriscado.

É difícil fazer reflexão de código Jython no Java. No Groovy, é moleza, já que cada script se torna um objeto java comum.

O Jython oferece uma documentação pobre, especialmente nas classes que se relacionam com o Script. Já a documentação da linguagem em si é boa, pois existem diversos manuais de python disponíveis.

A comunidade do Jython em si parecia meio morta, também. O Jython está na versão 2.1 desde março de 2005, parece que foi reativado recentemente.

Finalmente, o último que não nos satisfez foi a performance. A lentidão chegava a ser perceptível, pelo menos em nosso tipo de aplicação.

ViniGodoy

Depois de uma busca, achei um tópico onde eu falo mais da nossa experiência com JPython e Groovy:
http://www.guj.com.br/posts/list/30/57434.java#302508

Kknd

Gostei muito de brincar com o groovy, e na minha opinião ele é muito melhor do que o Jython, pela sua integração com as bibliotecas do Java, entre outros motivos. Quero testar ainda oJRuby, que parece estar muito bom!

Fabio_Kung

Me parece que a integração com Java é mais simples com Groovy. Eu iria de JRuby só pela linguagem.

eduveks

LuaJava é melhor e pronto!

(Jar = 19kb) + (Lib = 220kb) = 239kb

É o menor, e o melhor!

Qual a vantagem em usar um script que vai aumentar muito o peso da portabilidade do teu sistema? Sendo que vc tem outras opções melhores, e com menor tamanho :twisted:

No caso do LuaJava, dá para compilar o código de script, o motor é o motor oficial do Lua em C, tendo um ótimo desempenho.

LuaJava e esquece o resto :twisted:

nbluis

eduveks:
LuaJava é melhor e pronto!

(Jar = 19kb) + (Lib = 220kb) = 239kb

É o menor, e o melhor!

Qual a vantagem em usar um script que vai aumentar muito o peso da portabilidade do teu sistema? Sendo que vc tem outras opções melhores, e com menor tamanho :twisted:

No caso do LuaJava, dá para compilar o código de script, o motor é o motor oficial do Lua em C, tendo um ótimo desempenho.

LuaJava e esquece o resto :twisted:


Nossa que fissura.

Assembly é melhor por que te permite customizar teus algoritimos. :shock:

Fala sério.

eduveks

nbluis:
eduveks:
LuaJava é melhor e pronto!

(Jar = 19kb) + (Lib = 220kb) = 239kb

É o menor, e o melhor!

Qual a vantagem em usar um script que vai aumentar muito o peso da portabilidade do teu sistema? Sendo que vc tem outras opções melhores, e com menor tamanho :twisted:

No caso do LuaJava, dá para compilar o código de script, o motor é o motor oficial do Lua em C, tendo um ótimo desempenho.

LuaJava e esquece o resto :twisted:


Nossa que fissura.

Assembly é melhor por que te permite customizar teus algoritimos. :shock:

Fala sério.

Conhece e já usou Lua? E LuaJava? Sabe quantas empresas usam? E quais?

Até tu já deve ter usado programas que usam Lua, e não sabe…

Fala sério.

Assembly é melhor q C que é melhor que Java? Eu não quis dizer nada disto, apenas quis dizer que LuaJava usa o interpretador original, o que é favorável quando surge novas versões, do que ter um interpretador reescrito em Java, como é o caso do Phyton/Jython, e o interpretador de Lua é em C, e seria melhor em Assembly? Wow legal né… mas só por curiosidade, sabe por que é em C?

nbluis

Não por causa disso que ele é “melhor e pronto”!

Entendo que é uma linguagem muito rápida.
Muito utilizada em jogos pelo desempenho e tudo mais.

Mas vamos com calma.
Tem bastante coisa boa por ai.

eduveks

nbluis:
Não por causa disso que ele é “melhor e pronto”!

Entendo que é uma linguagem muito rápida.
Muito utilizada em jogos pelo desempenho e tudo mais.

Mas vamos com calma.
Tem bastante coisa boa por ai.

Realmente tem muita coisa boa, mas LuaJava é melhor! Na minha opinião, e pelos fatos que são relevantes pra mim.

cv1

Otimo, a gente ja entendeu - agora xiu :mrgreen:

ViniGodoy

Eu já usei o Lua mas, no caso do Java, ainda prefiro o Groovy, afinal ele foi feito para ser integrado com Java.

O Lua não é orientado a objetos (ok, você pode simular isso, mas é como falar que C é OO pq vc também pode simular isso com macros). Isso é uma tremenda desvantagem se comparado ao Groovy.

Não consegui fazer reflexão num script Lua. O que também é péssimo, no meu caso.

A integração dos objetos java, dentro do script lua, é um tanto traumática, principalmente se você levar em consideração que usuários não muito experientes com programação podem usar o script.

O groovy também usa o interpretador original, com a vantagem de ser 100% escrito em java. Ou seja, poucas chances de problemas com chamadas JNI e integração direta através de um .jar.

Por fim, os scripts do Groovy são diretamente transformados em classes java, que podem ser instanciadas. Não tem integração mais fácil do que essa. Você pode fazer o cast do script para uma interface e sair usando seus métodos. Simples assim.

Sem querer tirar o mérito do lua. Para aplicativos embarcados, jogos e integração com C/C++ é uma linguagem realmente fantástica. Mas também não dá para fechar os olhos e dizer que ele é a panacéia das linguagens de script.

Criado 4 de julho de 2007
Ultima resposta 6 de jul. de 2007
Respostas 15
Participantes 9