Olá!
O Post de hoje é inspirado no comentário feito pelo Aurium no post do Rafael, que me apresenta e fala um pouco sobre o que eu estaria escrevendo por aqui. Considero a preocupação dele bastante pertinente e por isso resolvi trazer algumas informações pra enriquecer o debate, cujas referências estarão no fim do post para leitura mais aprofundada.
Com relação a dúvida sobre patentes, referente ao .NET Framework, existe o seguinte fato:
A MS submeteu as especificações do C# e do CLI(Common Language Infrastructure), ECMA-334 e ECMA-335, respectivamente, ao Community Promise, que protege qualquer implementação feita por qualquer pessoa em qualquer linguagem de ser processada pela Microsoft, por conta de infração de leis de propriedade intelectual ou patentes relacionadas. Atitude ligada, basicamente, ao Projeto Mono, a implementação open source do .Net.
O Community Promise especifica:
Microsoft promete de maneira irrevogável não declarar qualquer Microsoft Necessary Claims (declarações de direito de posse e direito de controle da Microsoft) contra você por fazer uso, vender, oferecer para venda, importar ou distribuir qualquer implementação.
…O CP é imediatamente aplicável a todas as pessoas ou entidades que fazem, usam, vendem, oferecem para venda, importam e/ou distribuem uma implementação de uma Especificação Coberta. Isto tudo com a intenção de permitir implementações open source.
Implicações do Community Promise:
- É importante notar que, sob o Community Promise, qualquer um pode livremente implementar aquelas especificações com sua própria tecnologia, código e soluções.
- Você não precisa entrar em acordo com a licença, ou mesmo comunicar para a Microsoft como você irá implementar as especificações.
- O Promise provê a desenvolvedores, distribuidores e usuários das Implementações Cobertas sem fins lucrativos, os tipos de licenças de cópia sob qual este é distribuído um modelo de negócio associado.
- O Community Promise é menos permissivo que o Open Specification Promise pois o CP “requer que as implementações estejam em conforme com todas as partes requeridas das clausulas obrigatórias da especificação” mas os desenvolvedores continuam não precisando entrar em acordo com qualquer licença com a Microsoft ou informar a Microsoft sobre seu trabalho na implementação das especificações do C# ou CLI.
Sobre o CLI:
- O Common Language Infrastructure (CLI) é a especificação dos principais serviços do .NET Framework e que implementa a tecnologia que permite que um aplicativo seja desenvolvido em diversas linguagens de programação e executados num mesmo ambiente de execução.
- Para acelerar a adoção destes padrões pelo mercado, a Microsoft, que já possui o código utilizado no .NET Framework comercial, realizou duas implementações do CLI, uma delas para Windows XP e outra para FreeBSD, versão de Unix de código aberto muito utilizada pelo mundo acadêmico.
- O Debian incluiu o Mono como seu principal meio de instalar o GNOME por razões do Tomboy, que é uma aplicação escrita em C#.
Concluindo, acredito que essas informações podem nos deixar mais tranquilos com relação a patentes e demais tipos de controles, no que se refere ao CLI e o C#.
Referências:
http://www.infoq.com/br/news/2009/08/Microsoft-Community-Promise
http://www.microsoft.com/brasil/msdn/colunas/batepapo/col_batepapo_6.aspx
http://www.ecma-international.org/
0sem comentários ainda