| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/08/2008 18:46:27
|
onolox
JavaGuru
Membro desde: 20/06/2005 20:10:58
Mensagens: 211
Offline
|
Pela madrugada, java está se tornando uma linguagem extra-terrestre, daqui a pouco so os ETs vão entender isso.
heheeheheh...
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/08/2008 19:08:17
|
cmoscoso
Virtual Machine Man
![[Avatar]](/images/avatar/482adb7cad038f014bf906602b347b4c.jpg)
Membro desde: 23/10/2007 10:08:29
Mensagens: 539
Offline
|
Saída: [0, 2, 4, 6, 8, 10]
Mesmo programa escrito em Scheme:
Saida: (0 2 4 6 8 10)
E em Python, alguem ai?
|
"The most important part of writing a program is designing the data structures. The second most important part is breaking the various code pieces down." - Bill Gates |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/08/2008 19:38:53
|
peczenyj
Moderador
![[Avatar]](/images/avatar/299dc35e747eb77177d9cea10a802da2.jpg)
Membro desde: 26/03/2006 23:25:37
Mensagens: 2212
Localização: Rio de Janeiro
Offline
|
Imaginem poder enviar blocos de código à uma List ou Comparable, ficando cada vez mais parecido com Ruby.
To curioso pra ver como serão os Extension Methods, ficaria show de bola:
|
http://pacman.blog.br
'Não importa quanto alguém se dedique à tarefa. Ninguém consegue fazer a água da cascata cair para cima.' |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/08/2008 20:35:34
|
**Popeye12345**
Forum Spammer
Membro desde: 30/03/2008 20:56:41
Mensagens: 1293
Offline
|
Sinto cheiro de migração da galera pra outra sintaxe, mas a JVM é eterna. Concordam?
|
unnamed.
there are so many monkeys at guj. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/08/2008 21:22:45
|
Leonardo3001
JavaEvangelist
Membro desde: 04/07/2007 18:28:58
Mensagens: 476
Offline
|
cmoscoso wrote:
Saída: [0, 2, 4, 6, 8, 10]
Mesmo programa escrito em Scheme:
Saida: (0 2 4 6 8 10)
E em Python, alguem ai?
Em Python, não sei. Mas em Ruby, fica assim:
Apesar que eu acho que você foi injusto com Java, pois boa parte do seu código é para adicionar um método em ArrayList<E>. Na prática, quando Closure for real, novos métodos serão (ou deveriam ser) adicionados nas coleções, e ninguém fará isso à mão.
Portanto, para comparação, vou considerar no código Java apenas a classe com método estático main.
Fica assim:
Java (com closure) -> 9 linhas
Scheme -> 3 linhas
Ruby -> 2 linhas
|
Leonardo Veríssimo
-------------------------------------------------
Agora com blog: www.objectzilla.com.br |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/08/2008 22:01:13
|
Leonardo3001
JavaEvangelist
Membro desde: 04/07/2007 18:28:58
Mensagens: 476
Offline
|
Mais um, em Javascript (copie todo o código, jogue num html e veja no browser):
Porém, Javascript não tem suporte nativo para filtragem em Array, mas tem closure! Por isso, tive que adicionar um método select no Array.
Fica assim:
Java com closure -> 24 linhas
Javascript -> 11 linhas
Java com closure (apelando pra não considerar customização de ArrayList) -> 9 linhas
Scheme -> 3 linhas
Ruby -> 2 linhas
|
Leonardo Veríssimo
-------------------------------------------------
Agora com blog: www.objectzilla.com.br |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/08/2008 22:53:04
|
marcosalex
Virtual Machine Man
Membro desde: 20/02/2008 12:32:59
Mensagens: 667
Offline
|
A impressão que tenho é que a linguagem Java vem tendo cada vez mais maneiras de se fazer a mesma coisa, tornando-se complexa demais. Acho que no lugar disso, seria melhor eles trabalhassem em APIs, Frameworks e em IDEs produtivas. Bom, opiniao minha.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/08/2008 23:32:19
|
Proteu Alcebidiano
JavaEvangelist
![[Avatar]](/images/avatar/ceccbaaff99be20a857e00767f70b481.jpg)
Membro desde: 23/06/2006 14:38:34
Mensagens: 371
Localização: Cidadão do Mundo
Offline
|
marcosalex wrote:A impressão que tenho é que a linguagem Java vem tendo cada vez mais maneiras de se fazer a mesma coisa, tornando-se complexa demais. Acho que no lugar disso, seria melhor eles trabalhassem em APIs, Frameworks e em IDEs produtivas. Bom, opiniao minha.
Acho melhor ter uma linguagem que tem várias maneiras de fazer coisas semelhantes de modo elegante do que ter uma linguagem que tenta fazer isso de modo deselegante. Ficou feinho e burocrático utilizar closures em java, e espero que o uso disso não seja abusado no futuro.
T+
|
Glaucio G. de M. Melo
Don't run Alone.
[gm]² - Sustentabilidade Corporativa | -module(erlang).
The world is parallel, and yet most often we program real-world applications in sequential programming languages. This is unnecessarily difficult. (Joe Armstrong). |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/08/2008 00:03:44
|
Mauricio Linhares
Moderador
![[Avatar]](/images/avatar/97af07a14cacba681feacf3012730892.jpg)
Membro desde: 09/01/2005 23:28:22
Mensagens: 3515
Localização: João Pessoa, Paraíba - Brasil
Online
|
Poderíamos migrar todos pra Scala e sermos felizes para sempre
|
Blog pt-br | Blog en | My Last.fm | Blog de RPG
----------------------------------------
PBJUG - Grupo de Usuários Java da Paraíba | Paraíba.rb - Paraíba Ruby Brigade
How do we tell truths that might hurt? |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/08/2008 00:10:12
|
tnaires
Virtual Machine Man
![[Avatar]](/images/avatar/5f6371c9126149517d9ba475def53139.png)
Membro desde: 22/12/2003 08:05:58
Mensagens: 754
Localização: Natal - RN
Offline
|
Toda vida que um recurso novo é adicionado a linguagem, a história se repete. Na época de Generics, muita gente torceu o nariz e no final todos viram que é bom.
Às vezes acho a comunidade mais exigente que o necessário, minha opinião. Vejo linguagens como C# agregarem muitos recursos durante sua evolução, e em Java é a maior ladainha pra colocar algo novo.
|
Tarso Nunes Aires |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/08/2008 00:20:36
|
renatosilva
Forum Spammer
![[Avatar]](/images/avatar/cf63547fadc1aa6e897a62291e0cb124.jpg)
Membro desde: 16/12/2004 17:09:19
Mensagens: 1706
Offline
|
Porque em vez de ficar fazendo remendos eles não criam algo novo do zero?
This message was edited 2 times. Last update was at 10/08/2008 00:21:46
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/08/2008 00:26:57
|
Mauricio Linhares
Moderador
![[Avatar]](/images/avatar/97af07a14cacba681feacf3012730892.jpg)
Membro desde: 09/01/2005 23:28:22
Mensagens: 3515
Localização: João Pessoa, Paraíba - Brasil
Online
|
tnaires wrote:Toda vida que um recurso novo é adicionado a linguagem, a história se repete. Na época de Generics, muita gente torceu o nariz e no final todos viram que é bom.
Às vezes acho a comunidade mais exigente que o necessário, minha opinião. Vejo linguagens como C# agregarem muitos recursos durante sua evolução, e em Java é a maior ladainha pra colocar algo novo.
Todos quem cara-pálida?
A implementação de generics em java é sebosa e não existe informação nenhuma sobre os genéricos em tempo de execução, obrigando a construção de gambiarras (como passar o Class<T> quando você já passou T em algum lugar, não haver T[]). Uma feature que adiciona um absurdo de complexidade acidental, sem adicionar quase nada em funcionalidades. E a falta de type-inference faz o código generico ser desnecessariamente feio.
|
Blog pt-br | Blog en | My Last.fm | Blog de RPG
----------------------------------------
PBJUG - Grupo de Usuários Java da Paraíba | Paraíba.rb - Paraíba Ruby Brigade
How do we tell truths that might hurt? |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/08/2008 00:28:57
|
tnaires
Virtual Machine Man
![[Avatar]](/images/avatar/5f6371c9126149517d9ba475def53139.png)
Membro desde: 22/12/2003 08:05:58
Mensagens: 754
Localização: Natal - RN
Offline
|
E espero que na nova versão eles não façam mais a gente ficar passando Class<T>.
Mas a minha mensagem você entendeu. Eu só devia ter sido mais cuidadoso e ter falado "quase todos".
[EDITADO]
Então reescrevendo:
Na época de Generics, muita gente torceu o nariz e no final quase todos viram que foi melhor.
[/EDITADO]
This message was edited 2 times. Last update was at 10/08/2008 00:34:19
|
Tarso Nunes Aires |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/08/2008 00:34:39
|
renatosilva
Forum Spammer
![[Avatar]](/images/avatar/cf63547fadc1aa6e897a62291e0cb124.jpg)
Membro desde: 16/12/2004 17:09:19
Mensagens: 1706
Offline
|
O remendo é melhor que nada, mas não é o melhor.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/08/2008 00:37:15
|
tnaires
Virtual Machine Man
![[Avatar]](/images/avatar/5f6371c9126149517d9ba475def53139.png)
Membro desde: 22/12/2003 08:05:58
Mensagens: 754
Localização: Natal - RN
Offline
|
Bom, pra mim o que interessa é que agora a consistência das minhas coleções pode ser verificada em tempo de compilação, além de não ter que ficar fazendo casts o tempo todo.
Mas veja só, eu falando que a comunidade é exigente, nem tinha reparado que há uns posts atrás nesse tópico eu tava reclamando da sintaxe de closures também
|
Tarso Nunes Aires |
|
|
 |
|
|