Publicado por Rafael Rosa em 24 de May de 2010
Lançado o Rubinius 1.0 – Entenda tudo que está por trás dele
O Rubinius repositório no GitHub, uma implementação do alternativa Ruby em em Ruby (pelo menos tanto quanto possível), chegou a sua versão 1.0! Parabéns à equipe do Rubinius, tanto a atual quanto a anterior, e a todos que colaboraram com ele - eu não tinha certeza se um dia comemoraríamos isso..
A história
Em 2006, Geoffrey Grosenbach (do PeepCode) disse que fez uma aposta doando US$ 1.000 ao então novo projeto de implementação Ruby, o Rubinius, projeto iniciado por Evan Phoenix. Na época, pareceu mais um ato de caridade, mas Geoffrey riu por último garantindo o direito de dar o nome ao Rubinius 1.0, conhecido como Fabius.
O objetivo do Rubinius foi inspirado pelos compiladores/interpretadores do LISP e Smalltalk que são inteiramente implementados na linguagem que pretendiam suportar, ou pelo menos tanto quanto possível. Os benefícios são claros: você não precisa ser um mestre em C para fazer melhorias significantes à linguagem ou para fazer mudanças no interpretador, basta saber Ruby.
No fim de 2007, graças a muita ajuda da Engine Yard, havia uma equipe de 5 pessoas trabalhando em tempo integral no Rubinius e ele progrediu muito nesse período, fazendo do Rubinius a terceira implementação de Ruby a rodar Rails em Maio de 2008.
Porém, em Novembro de 2008, aconteceu uma catástrofe: o mundo entrou numa crise financeira e Evan teve que demitir a maior parte da equipe do Rubinius, deixando apenas 2 desenvolvedores. A partir desse momento, o objetivo passou a ser envolver mais pessoas no projeto, como tantos outros projetos open source, com pessoas doando seu tempo livre. De qualquer maneira o futuro não parecia muito promissor, e em Maio de 2009, Evan anunciou que "os rumores do nosso fim são demasiadamente exagerados" (numa referência a Mark Twain) e que o desenvolvimento continuava caminhando (ainda que a passos lentos).
Onde chegamos
Agora o Rubinius chegou à mítica "versão 1.0." Evan é um cara sério, e se colocou o selo de 1.0 é porque o projeto é sólido, veja algumas das funcionalidades:
- Funciona com o Rails 3.x e 2.3.5
- Funciona com o Sinatra
- Usa um generational garbage collector
- Suporta várias extensões populares, como o sqlite3-ruby, mysql, Nokogiri, yajl-ruby (e, obviamente, "muito mais.")
- Profiler integrado
- Compilação JIT (à la JRuby) para aumentar a performance
- Não funciona no Windows (ainda)
Usando o Rubinius 1.0
Desculpe-me por insistir, mas a melhor maneira de colocar o Rubinius 1.0 para funcionar é utilizando o RVM (Ruby Version Manager) do Wayne E Seguin. Ele já foi atualizado para suportar a versão 1.0 do Rubinius, então é bem fácil instalá-lo se você estiver usando o OS X ou Linux, mas você precisa atualizar o RVM para a última versão antes:
# rvm update --head
.. algum tempo passa, depois você fecha o terminal e abre um novo ..
# rvm install rbx
.. algum tempo passa, o Rubinius 1.0 está instalado ..
# rvm rbx
# ruby -v
rubinius 1.0.0 (1.8.7 release 2010-05-14 JI) [x86_64-apple-darwin10.3.0]
Se você preferir algo mais radical, você pode dar uma olhada no repositório do Rubinius no GitHub, baixe o código e faça a instalação manual (seguindo as instruções do README). Se estiver interessado em alterá-lo com ele, ao invés de apenas testá-lo, esse é o caminho aconselhado, já que voê poderá navegar pelo código mais facilmente e ver como ele foi feito, ou você pode simplesmente navegar pelo código no GitHub.

Clique aqui para adicionar ao del.icio.us

03 de June de 2010 às 20:40
Esplique-me tudo mais claro, por favor! e no Ruindows quando?