segunda-feira, 17 de agosto de 2009

Pragmatismo - Ruby, Groovy (e algumas outras coisas...)

E de tanto (e bota tanto nisso) foco na discussão sobre linguagens dinâmicas, onde Ruby vem recebendo uma atenção especial, comecei a avaliar um pouco mais sobre a linguagem que é a moda atual.

Disto tudo eu tirei algumas percepções, e vejam bem, são percepções e não conclusões... vamos manter o pragmatismo.

  1. Ruby está na moda, ok. Mas se não fosse o Rails, talvez fosse a vez de outra linguagem
  2. É Fato que a implementação de referência do interpretador de Ruby é lento (e é inecifiente em GC, etc. Então é comum identificar usuários Ruby buscando alternativas mais avançadas, exemplo: JRuby.

Mas porque então foi o Ruby que ganhou toda esta fama ? Alguém já ouviu falar de Groovy, ou ainda, Grails ?

Ted Newards, autor dos livros "Effective Enterprise Java", "Server Based Java Programming", entre outros, postou um artigo em seu blog fazendo alguns comparativos entre as linguagens atuais. Deste artigo gostaria de reproduzir os seguintes trechos:

JRuby, IronRuby. Ruby on the JVM. 'nuff said. Ditto for IronRuby on to CLR. All the linguistic power (and flaws) of Ruby, on top of the JVM/CLR, which now means it's a far easier sell to the IT boys who run the datacenter.
...
Groovy. "Ruby meets Java in a bar and has a love child." Groovy's syntax is easy and based on Java, and that's both a good and a bad thing. Good if you're a Java programmer who doesn't want to have to reach very far to get some dynamic goodness; bad if you're trying to avoid some of the stranger or syntactically inconsistent aspects of the Java language, or looking to do some entirely new ways of doing things. Personally, I don't find Groovy all that intellectually stimulating, which is both a blessing and a curse.
...
Ruby. "Smalltalk meets Perl in a bar and has a love child." I like parts of the Ruby syntax, but there's too many Perl-isms in there for my taste. The fact that Ruby runs on top of its own interpreter (which is neither monitorable nor manageable using IT-datacenter-established tools) is a significant drawback. RoR may be great for vertical silo apps that don't need to integrate with the rest of the datacenter, but that's a pretty scary place to put yourself.
Neste mesmo artigo comenta que as linguagens dinâmicas são over-hyped, e que não é sensato pensar que esta ou aquela linguagem dominarão o mundo. Traduzindo em miúdos... Cada macaco no seu Galho.

Este post aqui é só um brainstorm... continuo "brincando" por aqui com estas linguagens e vou compartilhando com vocês o que eu for descobrindo!

Sua opinião é bem-vinda!

[]'s
Leandro

Nenhum comentário: