Scala tem boa performance mas é estatica e por isso não é muito apropriada para desenvolvimento web.
JRuby ainda possui uma implementação muito pobre na JVM.
Groovy é boa para web mas assim como Ruby, não para aplicações que requer alta performance.
Para substituir Java como linguagem que é pau pra toda obra e desenvolver qualquer tipo de programa, Clojure sem dúvida. A comunidade esta crescendo bastante, assim como o suporte oferecido por IDEs.
[quote=mochuara]Scala tem boa performance mas é estatica e por isso não é muito apropriada para desenvolvimento web.
JRuby ainda possui uma implementação muito pobre na JVM.
Groovy é boa para web mas assim como Ruby, não para aplicações que requer alta performance.
Para substituir Java como linguagem que é pau pra toda obra e desenvolver qualquer tipo de programa, Clojure sem dúvida. A comunidade esta crescendo bastante, assim como o suporte oferecido por IDEs.
nenhuma delas na minha opinião. Sobre performance, todas teriam a mesma, pois quem dita isso é a jvm.
Eu preferiria que a jvm suportasse c#. Acho uma linguagem muito boa. É só uma questão de opinião pessoal .
[quote=juliocbq]nenhuma delas na minha opinião. Sobre performance, todas teriam a mesma, pois quem dita isso é a jvm.
Eu preferiria que a jvm suportasse c#. Acho uma linguagem muito boa. É só uma questão de opinião pessoal . [/quote]
Não conheço muito C#… já trabalhei a muito tempo atrás com ela…
Tem uns recursos que realmente Java nao tem…
A unica coisa que nao gostei foi o padrao de nomeclatura… onde tudo era maiusculo…
[quote=juliocbq]nenhuma delas na minha opinião. Sobre performance, todas teriam a mesma, pois quem dita isso é a jvm.
Eu preferiria que a jvm suportasse c#. Acho uma linguagem muito boa. É só uma questão de opinião pessoal . [/quote]
Na verdade nao!! depende do compilador que fizerem. Por exemplo é fato que o JRuby é lento, e que o do Scala roda praticamente igual java na JVM!
[quote=fredferrao][quote=juliocbq]nenhuma delas na minha opinião. Sobre performance, todas teriam a mesma, pois quem dita isso é a jvm.
Eu preferiria que a jvm suportasse c#. Acho uma linguagem muito boa. É só uma questão de opinião pessoal . [/quote]
Na verdade nao!! depende do compilador que fizerem. Por exemplo é fato que o JRuby é lento, e que o do Scala roda praticamente igual java na JVM![/quote]
JRuby é mais lento porque carrega mais dependencias na inicialização. Isso é perfeitamente visível usando um debugger. Depois que o hotspot compilou para código nativo, ele roda na mesma velocidade que java, ou qualquer outro código na jvm, porque são praticamente o mesmo código. Quem dita isso é o hotspot.
Scala parece ser bem interessante pra desenvolver pra web, usando o Lift. Dessas ‘novas’ linguagens que tem uma boa plataforma e suportam concorrência, Scala parace ser a mais pragmática pra mim, que desenvolvo pra web. Não acho que tenha muita coisa a ver a linguagem ser estática/dinâmica e a produtividade que ela te dá. A maioria do pessoal que critica linguagens estáticas dizendo que são verbosas e menos produtivas, falam isso porque as linguagens estáticas que conhecem tem sistemas de tipos pouco expressivos comparados a haskell, ml, ocaml.
Segundo o criador do Lift, que já trabalhou com Rails, Scala tem grande parte da flexibilidade do Ruby e ainda tem as vantagens que um bom sistema de tipos em uma linguagem estaticamente tipada pode trazer. Parece ser uma boa apsota pra quem quer sair do lugar comum e não quer ficar preso a uma linguagem que tem features interessantes, mas que não é muito pragmática.
[quote=dlt]Scala parece ser bem interessante pra desenvolver pra web, usando o Lift. Dessas ‘novas’ linguagens que tem uma boa plataforma e suportam concorrência, Scala parace ser a mais pragmática pra mim, que desenvolvo pra web. Não acho que tenha muita coisa a ver a linguagem ser estática/dinâmica e a produtividade que ela te dá. A maioria do pessoal que critica linguagens estáticas dizendo que são verbosas e menos produtivas, falam isso porque as linguagens estáticas que conhecem tem sistemas de tipos pouco expressivos comparados a haskell, ml, ocaml.
Segundo o criador do Lift, que já trabalhou com Rails, Scala tem grande parte da flexibilidade do Ruby e ainda tem as vantagens que um bom sistema de tipos em uma linguagem estaticamente tipada pode trazer. Parece ser uma boa apsota pra quem quer sair do lugar comum e não quer ficar preso a uma linguagem que tem features interessantes, mas que não é muito pragmática.[/quote]
O Alex Payne em seu livro tambem fala isto, ele fala que a verbosidade se da tambem pela falta de type inference, o que scala tem:
[quote=juliocbq][quote=fredferrao][quote=juliocbq]nenhuma delas na minha opinião. Sobre performance, todas teriam a mesma, pois quem dita isso é a jvm.
Eu preferiria que a jvm suportasse c#. Acho uma linguagem muito boa. É só uma questão de opinião pessoal . [/quote]
Na verdade nao!! depende do compilador que fizerem. Por exemplo é fato que o JRuby é lento, e que o do Scala roda praticamente igual java na JVM![/quote]
JRuby é mais lento porque carrega mais dependencias na inicialização. Isso é perfeitamente visível usando um debugger. Depois que o hotspot compilou para código nativo, ele roda na mesma velocidade que java, ou qualquer outro código na jvm, porque são praticamente o mesmo código. Quem dita isso é o hotspot.[/quote]
Bom eu não tenho muito know-how para discutir isto profundamente, mas seguindo tua logica todos os códigos feitos em C por exemplo rodariam na mesma velocidade. E onde fica a optimização??? Falei do compilador porque os caras podem ter feito um que gera um bytecode sofrivel, sem pensar na performance.
[quote=fredferrao][quote=mochuara]Scala tem boa performance mas é estatica e por isso não é muito apropriada para desenvolvimento web.
JRuby ainda possui uma implementação muito pobre na JVM.
Groovy é boa para web mas assim como Ruby, não para aplicações que requer alta performance.
Para substituir Java como linguagem que é pau pra toda obra e desenvolver qualquer tipo de programa, Clojure sem dúvida. A comunidade esta crescendo bastante, assim como o suporte oferecido por IDEs.
E porque estatica nao seria boa para web?? O que estatica tem haver com web ou qualquer outra coisa?
O fato é que ser estatica é exatamente um ponto defendido pelos criadores e adeptos.
[/quote]
Aplicações web costumam requerer 100% de disponibilidade, poder corrigir bugs sem precisar derrubar o servidor é um grande negócio. Em clojure voce poder conectar com um processo web e efetuar as alterações necessárias remotamente.
Acredito que isso possa ser feito em outras linguagens dinamicas, mas clojure é melhor projetada pra esse tipo de coisa. Como vc faria em Scala?
[quote=juliocbq][quote=fredferrao][quote=juliocbq]nenhuma delas na minha opinião. Sobre performance, todas teriam a mesma, pois quem dita isso é a jvm.
Eu preferiria que a jvm suportasse c#. Acho uma linguagem muito boa. É só uma questão de opinião pessoal . [/quote]
Na verdade nao!! depende do compilador que fizerem. Por exemplo é fato que o JRuby é lento, e que o do Scala roda praticamente igual java na JVM![/quote]
JRuby é mais lento porque carrega mais dependencias na inicialização. Isso é perfeitamente visível usando um debugger. Depois que o hotspot compilou para código nativo, ele roda na mesma velocidade que java, ou qualquer outro código na jvm, porque são praticamente o mesmo código. Quem dita isso é o hotspot.[/quote]
Ou seja, nem todas as linguagens na JVM tem a mesma performance, depende de como ela foi projetada. Se ela faz uso constante de reflection por exemplo, claro que sera mais lenta. Não fale besteira.
[quote=dlt]Scala parece ser bem interessante pra desenvolver pra web, usando o Lift. Dessas ‘novas’ linguagens que tem uma boa plataforma e suportam concorrência, Scala parace ser a mais pragmática pra mim, que desenvolvo pra web. Não acho que tenha muita coisa a ver a linguagem ser estática/dinâmica e a produtividade que ela te dá. A maioria do pessoal que critica linguagens estáticas dizendo que são verbosas e menos produtivas, falam isso porque as linguagens estáticas que conhecem tem sistemas de tipos pouco expressivos comparados a haskell, ml, ocaml.
Segundo o criador do Lift, que já trabalhou com Rails, Scala tem grande parte da flexibilidade do Ruby e ainda tem as vantagens que um bom sistema de tipos em uma linguagem estaticamente tipada pode trazer. Parece ser uma boa apsota pra quem quer sair do lugar comum e não quer ficar preso a uma linguagem que tem features interessantes, mas que não é muito pragmática.[/quote]
Tenta fazer uma aplicação web usando lift e depois volta pra dizer pra gente quanto scala é pragmatica. :lol:
[quote=mochuara][quote=fredferrao][quote=mochuara]Scala tem boa performance mas é estatica e por isso não é muito apropriada para desenvolvimento web.
JRuby ainda possui uma implementação muito pobre na JVM.
Groovy é boa para web mas assim como Ruby, não para aplicações que requer alta performance.
Para substituir Java como linguagem que é pau pra toda obra e desenvolver qualquer tipo de programa, Clojure sem dúvida. A comunidade esta crescendo bastante, assim como o suporte oferecido por IDEs.
E porque estatica nao seria boa para web?? O que estatica tem haver com web ou qualquer outra coisa?
O fato é que ser estatica é exatamente um ponto defendido pelos criadores e adeptos.
[/quote]
Aplicações web costumam requerer 100% de disponibilidade, poder corrigir bugs sem precisar derrubar o servidor é um grande negócio. Em clojure voce poder conectar com um processo web e efetuar as alterações necessárias remotamente.
Acredito que isso possa ser feito em outras linguagens dinamicas, mas clojure é melhor projetada pra esse tipo de coisa. Como vc faria em Scala?
[/quote]
E eu sei la como eu faria? Faria como é feito hoje com 99% das aplicações web :lol: Bom eu nao sei se em Scala tem essa feature, ainda nem sai do primeiro capitulo do livro que peguei pra ler :oops: , Mas se esta falando de Hot Code Swapping, pelo que andei vendo aqui neste Scala x Erlang o erlang levou o ponto neste quesito, mas pelo que entedi o problema não é da linguagem em si, é a JVM que não tem muito suporte para isto, ou seja qualquer outra linguagem que estiver rodando na JVM estaria na mesma condição.
Ai ficam as perguntas:
1 - É sobre hot code swapping que estas falando?
2 - Clojure consegue fazer isto DENTRO da JVM? Pois a pergunta do post é sobre linguagem para a JVM.