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.

Apenas Um Comentário para “Lançado o Rubinius 1.0 – Entenda tudo que está por trás dele”

  1. #1
    nilson lana machado Disse:

    Esplique-me tudo mais claro, por favor! e no Ruindows quando?

Deixe um Comentário