Visite também: UnderLinux ·  Dicas-L ·  SoftwareLivre.org ·  [mais] ·  Currículo ·  Efetividade ·  Arduino

Ele não gostou: Dr. Stallman chama o compilador livre LLVM de "terrível revés" para a comunidade dele

Quando eu deixei de ser membro da FSF, uma das razões era meu desconforto ao sentir que determinadas atitudes eram mais voltadas a atacar o software proprietário do que a ampliar a utilidade ou a aplicabilidade dos softwares livres. Isso deve fazer sentido sob o ponto de vista de seus proponentes, mas não ressoava bem a partir do meu próprio ponto de vista, na ocasião.

Isso fica evidenciado, para mim, na recente resposta de Richard Stallman a uma sugestão de que o GCC passasse a incluir alguns recursos adicionais que vêm atraindo atenção para o compilador LLVM/Clang.

O LLVM é disponibilizado sob uma licença de software livre compatível com a GPL, agrada desenvolvedores por uma série de características incluindo consistência interna e mesagens de erro mais claras que as do GCC e, apesar de ser um projeto recente, já está se aproximando do desempenho do GCC em tempo de execução (em tempo de compilação já o superou para vários casos de uso).

O recentemente lançado FreeBSD 10 é compilado com o LLVM por default, e o LLVM vem se aproximando cada vez mais de estar apto a compilar, sem necessidade de patches, o kernel Linux e os programas que fazem parte de uma distribuição típica.

Entre os motivos que o bom Doutor lança na sua curta mensagem contrária ao LLVM estão o fato de ele receber apoio da Apple, mas vale lembrar que no início da existência do projeto, o seu coordenador (então um funcionário da Apple) ofereceu todo o seu código – que aí seria relicenciado sob a versão corrente da própria GPL – aos desenvolvedores do GCC para inclusão, mas estes recusaram por uma série de razões técnicas e de conveniência (era em C++ e eles preferiam código em C, por exemplo).

O código recusado acabou virando um projeto livre que agora tem características que usuários do GCC solicitam que sejam incluídas também nele1, e coube ao bom Doutor explicar por que não irá fazê-lo.

Sugiro que você leia a mensagem do bom doutor, porque ele não me autoriza a traduzir o que ele escreve (eu já pedi). Mas espero que ele não se incomode muito por eu ter traduzido o parágrafo abaixo, tão literalmente quanto consigo:

“O GCC ser substituído por outro compilador tecnicamente superior que defendesse a liberdade igualmente bem me causaria algum sentimento pessoal de perda, mas eu me regozijaria pelo avanço da comunidade. A existência do LLVM é um terrível revés para a nossa comunidade precisamente porque ele não está sob copyleft e pode ser usado para compiladores não-livres – de tal forma que toda contribuição para o LLVM diretamente ajuda o software proprietário tanto quanto nos ajuda.”

Bem menos literalmente, preparei uma síntese do que me chama a atenção negativamente no ponto de vista expresso pelo bom doutor sobre as ferramentas em questão (LLVM e GCC):

  • Segundo o bom doutor, os desenvolvedores do LLVM não adotam no seu produto as mesmas “inconveniências” que os desenvolvedores do GCC escolheram adotar para defender a liberdade, porque não compartilham das mesmas metas e valores que eles.
  • O bom Doutor acredita que o fato de haver produtos não-livres que aproveitam o LLVM prova que ele está certo e que o perigo é real.
  • Para ele, o fato de o LLVM ser código livre não basta: na sua visão, o único código que ajuda a ele e a seus companheiros mas não aos seus adversários2 é o que estiver sob licenças livres com copyleft (que oferecem liberdade fazendo a exigência de reciprocidade).
  • Ele aproveita para usar palavras negativas para caracterizar as licenças livres que não incluem cláusulas de exigência de reciprocidade, e para convidar quem estiver desenvolvendo plugins para o LLVM a fazê-lo sob o licenciamento que ele prefere.

A situação de defender a manutenção da existência de inconveniências intencionais e recusar incluir recursos úteis na prática em um software porque se pensa antes em evitar compartilhar uma vantagem com seus adversários do que a disponibilizá-la à sua própria comunidade seria a perfeita síntese do que expus no meu parágrafo de abertura: deve fazer sentido a quem adota determinada bandeira, mas não é a minha. (via lwn.net - “Stallman on GCC, LLVM, and copyleft [LWN.net]”)

 
  1.  Eric Raymond sintetizou a situação estratégica que isso gera: as ferramentas livres são a melhor arma a favor de objetivos como promover a liberdade e abertura, erodir o controle proprietário, prevenir que empresas possam nos prender a suítes de desenvolvimento proprietárias; mas quando a FSF se recusa a incluir nessas ferramentas recursos que estão disponíveis em outras ferramentas também livres e que não são usadas para as mesmas finalidades políticas dela, ela não está avançando em busca do seu objetivo.

  2.  Essa questão do "mas não aos adversários" remete de volta ao que abordei no primeiro parágrafo.

Comentar

 
comments powered by Disqus

Comentários arquivados