| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 11/07/2003 12:50:23
|
louds
Moderador
![[Avatar]](/images/avatar/1e48c4420b7073bc11916c6c1de226bb.jpg)
Membro desde: 29/04/2003 23:09:15
Mensagens: 4061
Localização: São Paulo
Offline
|
Tava dando uma olhada em como funciona AOP já que tanto se fala no forum e acabei percebendo uma coisa.
Usar aspectagem contra um programa LGPL implica em tornar os aspectos que o instrumentam LGPL também.
Isso porque, se não estou errado, arquivos .class são considerados pela licensa também como forma de arquivo fonte. Logo se for feita qualquer alteração no programa via aspectagem, o código fonte relacionado teria de ser distribuido como LGPL.
|
http://www.kumpera.net/blog/
http://www.mono-project.com/
"Each individual should work for himself. People will not sacrifice themselves for the company. They come to work at the company to enjoy themselves."
Soichiro Honda |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 11/07/2003 13:15:48
|
cv
Moderador
![[Avatar]](/images/avatar/210f760a89db30aa72ca258a3483cc7f.jpg)
Membro desde: 04/04/2003 00:32:12
Mensagens: 7842
Localização: São Paulo, SP
Offline
|
Bom, eu sou péssimo nessas coisas de licensiamento de software (é free? o autor me deixa usar nesse caso específico? ótimo, eu não vou ler a licensa )
Mas acredito que isso varia bastante da ferramenta de AOP que vc está usando. No caso do AspectWerkz, por exemplo, voce nao precisa necessariamente mexer no .class pra usar aspectos (ele pode fazer isso, ou pode interceptar o classloader e fazer as modificacoes ali). Ou entao, com o Nanning, voce nem mexe em bytecode, já que tudo é feito através de dynamic proxies.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 11/07/2003 17:20:54
|
louds
Moderador
![[Avatar]](/images/avatar/1e48c4420b7073bc11916c6c1de226bb.jpg)
Membro desde: 29/04/2003 23:09:15
Mensagens: 4061
Localização: São Paulo
Offline
|
No caso do AspectWerkz, por exemplo, voce nao precisa necessariamente mexer no .class pra usar aspectos (ele pode fazer isso, ou pode interceptar o classloader e fazer as modificacoes ali).
Ue, qual seria a diferença entre editar estaticamente o .class e em tempo real? Não vai tar modificando da mesma forma?
|
http://www.kumpera.net/blog/
http://www.mono-project.com/
"Each individual should work for himself. People will not sacrifice themselves for the company. They come to work at the company to enjoy themselves."
Soichiro Honda |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 11/07/2003 17:30:53
|
Rafael Steil
Administrador
![[Avatar]](/images/avatar/8e296a067a37563370ded05f5a3bf3ec.jpg)
Membro desde: 31/08/2002 02:35:53
Mensagens: 5984
Localização: São Paulo
Offline
|
Por isso que nao gosto da GPL e LPGL.. elas enchem de limitacao o desenvolvedor. O stallman diz que eh para "proteger", mas na hora em que voce precisa algo que esta sob essas licensas ( e outras, mas essas na grande maior parte dos casos ), aparecem trocentas limitacoes ou imposicoes, e muitas vezes voce eh obrigado a procurar outra solucao ou implantar do zero ( isso legalmente, mas na pratica todo mundo vai la e ripa o codigo na cada dura mesmo ).
Licensas no estilo BSD considero muito melhores, pois a grosso modo dizem "pode usar da forma que achar melhor, mas nao diz que o autor original eh voce e, se tiver problemas, nao culpe o criador do codigo".
Mas cada um usa a que achar melhor, [b]nao[/code] quero abrir aqui uma discussao feroz e ideologica sobre licensiamento open source e afins. Apenas meus alguns cents.
Rafael
|
"working code attracts people who want to code. Design documents attract people who want to talk about coding - Charles Miller"
http://rafaelsteil.com
http://twitter.com/rafaelsteil
http://www.jforum.net
http://www.flickr.com/photos/rafaelsteil |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 11/07/2003 18:49:49
|
kuchma
Moderador
![[Avatar]](/images/avatar/85422afb467e9456013a2a51d4dff702.jpg)
Membro desde: 17/01/2003 19:36:16
Mensagens: 1231
Localização: Curitiba - PR
Offline
|
Rafael Steil wrote:Por isso que nao gosto da GPL e LPGL.. elas enchem de limitacao o desenvolvedor. O stallman diz que eh para "proteger", mas na hora em que voce precisa algo que esta sob essas licensas ( e outras, mas essas na grande maior parte dos casos ), aparecem trocentas limitacoes ou imposicoes, e muitas vezes voce eh obrigado a procurar outra solucao ou implantar do zero ( isso legalmente, mas na pratica todo mundo vai la e ripa o codigo na cada dura mesmo ).
Licensas no estilo BSD considero muito melhores, pois a grosso modo dizem "pode usar da forma que achar melhor, mas nao diz que o autor original eh voce e, se tiver problemas, nao culpe o criador do codigo".
Mas cada um usa a que achar melhor, [b]nao[/code] quero abrir aqui uma discussao feroz e ideologica sobre licensiamento open source e afins. Apenas meus alguns cents.
Entao - tudo eh uma questao de liberdade de escolha, como voce colocou...
Para quem quer praticidade, sem se importar se alguem vai estar usando o seu codigo ou nao em produtos fechados, BSD.
Para quem se importa com a ideologia do software livre (e o futuro do mesmo a longo-prazo), GPL.
A LGPL eh uma GPL mais "amena" - certo? Ela permite linkagem em determinadas situacoes de codigo "livre" (LGPL) com codigo proprietario. Entao acho que essa discussao deveria ser em relacao a AOP no tocante a codigo GPL (ja que a GPL eh que restringe utilizacao de codigo em produtos proprietarios). Se falei besteira, corrijam-me.
Marcio Kuchma
|
E tu, Belém-Efrata, pequena demais para figurar como grupo de milhares de Judá, de ti me sairá o que há de reinar em Israel, e cujas origens são desde os tempos antigos, desde os dias da eternidade. Mq 5:2, Miquéias, 750 AC aprox. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 11/07/2003 19:33:57
|
louds
Moderador
![[Avatar]](/images/avatar/1e48c4420b7073bc11916c6c1de226bb.jpg)
Membro desde: 29/04/2003 23:09:15
Mensagens: 4061
Localização: São Paulo
Offline
|
A GPL possui apenas uma restrição, se voce usar software GPL linkado junto de outro não-GPL voce tem que distribuir o não GPL como GPL. Não existe restrições comerciais algumas, senão empresar como IBM e Novell não poderiam estar faturando bilhões de dólares como estão com linux e software GPL. Ou pelo menos foi isso que o Evan Leibovitch falou na palestra dele em sampa 2 semanas atraz.
A GPL não te impoe restrições, as pessoas que assim enchergam a característica da licensa. Afinal, a escolha final é sempre do desenvolvedor, se escolheu usar algo GPL, aprenda a trabalhar com ela. Parafraseando algo que todos aqui devem lembrar:
O importante não é tomar uma decisão, mas sim entender a decisão que já foi feita
Mas voltando ao assunto sobre AOP. Sera que isso não se extenderia a qualquer tipo de software que faz instrumentação de bytecode? Como pode exemplo JDO e outros.
|
http://www.kumpera.net/blog/
http://www.mono-project.com/
"Each individual should work for himself. People will not sacrifice themselves for the company. They come to work at the company to enjoy themselves."
Soichiro Honda |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 11/07/2003 21:19:29
|
cv
Moderador
![[Avatar]](/images/avatar/210f760a89db30aa72ca258a3483cc7f.jpg)
Membro desde: 04/04/2003 00:32:12
Mensagens: 7842
Localização: São Paulo, SP
Offline
|
Bom, deixando de lado a masturbação mental sobre licensas, e voltando ao assunto...
louds wrote:Sera que isso não se extenderia a qualquer tipo de software que faz instrumentação de bytecode? Como pode exemplo JDO e outros.
Cara, eu juro que eu li a LGPL, e eu nao vi absolutamente nada dizendo que .class é uma forma de código-fonte. Mesmo pq, não faz o menor sentido... me dá alguns links sobre onde vc achou isso?
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/07/2003 11:39:27
|
dukejeffrie
Virtual Machine Man
![[Avatar]](/images/avatar/c74d97b01eae257e44aa9d5bade97baf.png)
Membro desde: 21/08/2002 03:53:28
Mensagens: 661
Offline
|
Bom, eu nao to nem aih pros termos exatos da GPL. Termos exatos sao coisas que os advogados inventam pra fazer ora uma coisa, ora outra, usando o mesmo texto.
Na minha visao, assim como usar .c ou .o dá na mesma (em termos de "uso do código alheio"), usar .java ou .class dá na mesma. Aspectar ou construir em cima dá na mesma, em termos de uso.
A GPL foi concebida pra proteger direitos autorais. Daí vieram uns carinhas e enfiaram no meio o "vírus da abertura", na esperanca de contaminar todo software do mundo. Só que com o vírus veio a doenca: ninguém quer usar GPL. Inventaram uma LGPL, pra abrir...
Um dia eu vou inventar uam "Licenca Tiago", que vai requerer um arquivo authors.txt, com o nome de todo mundo que encostou no software e pronto.
[]s!!!
|
Brevity is the soul of wit |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/07/2003 21:32:30
|
louds
Moderador
![[Avatar]](/images/avatar/1e48c4420b7073bc11916c6c1de226bb.jpg)
Membro desde: 29/04/2003 23:09:15
Mensagens: 4061
Localização: São Paulo
Offline
|
dukejeffrie wrote:
...
A GPL foi concebida pra proteger direitos autorais. Daí vieram uns carinhas e enfiaram no meio o "vírus da abertura", na esperanca de contaminar todo software do mundo. Só que com o vírus veio a doenca: ninguém quer usar GPL. Inventaram uma LGPL, pra abrir...
...
Ei, de onde voce tirou essa ideia? A nao ser que eu e o Richard Stallman estejamos completamente enganados, mas a GPL foi criada como copyleft'ed desde sempre. Nao existe esse negocio de 'enfiaram no meio', a GPL, caso vc nao saiba, eh um dos pilares da FSF, que prega que todo software deve ser livre.
Enfim, revivi esse topico pq o Dave Turner, o CARA de licensas junto a FSF, disse que bibliotecas java LGPL possuem a propriedade 'viral' da GPL.
http://article.gmane.org/gmane.comp.jakarta.poi.devel/5900
Moral da historia, se vc conhece QUALQUER aplicacao java que seja distribuida com o driver jdbc da mysql.com, vc pode entrar na justica pq tao violando seu direito.
[/code]
|
http://www.kumpera.net/blog/
http://www.mono-project.com/
"Each individual should work for himself. People will not sacrifice themselves for the company. They come to work at the company to enjoy themselves."
Soichiro Honda |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/07/2003 22:45:19
|
Bani
JWizard
![[Avatar]](/images/avatar/6cdd60ea0045eb7a6ec44c54d29ed402.jpg)
Membro desde: 13/10/2002 23:17:37
Mensagens: 2443
Localização: São Paulo
Offline
|
O problema das licenças GPL é esse. Eles adoram fazer discursos, escrever páginas e páginas de "filosofia" do software livre, colocar prefácio contando historinha junto ao texto da licença, etc e aí quando chega o momento de realmente entender a licença as pessoas já estão com as "idéias embaralhadas".
Bom, um dos muitos textos do Richard Stallman é o Why you shouldn't use the Library GPL for your next library. Retirando toda a parte em que ele fica defendendo os princípios de free software e vendo apenas o primeiro parágrafo, temos:
The GNU Project has two principal licenses to use for libraries. One is the GNU Library GPL; the other is the ordinary GNU GPL. The choice of license makes a big difference: using the Library GPL permits use of the library in proprietary programs; using the ordinary GPL for a library makes it available only for free programs.
Então, segundo o Stallman, é possível sim fazer aplicações Java proprietárias usando esse driver do MySQL.
Segundo o link passado o problema seria o item 6 da LGPL. Mas antes de ir diretamente ao 6 (que realmente restringe o desenvolvedor, apesar de não obrigá-lo a usar LGPL), devemos observar o item 5:
5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License.
Ou seja, apenas se criar um executável contendo a lib ele vai para o item 6, mas em Java muitas vezes dá para deixar o jar como algo bem a parte.
Ainda no parágrafo 5, tem mais umas coisas meio obscuras, que eles mesmo não puderam definir, que tratam justamente da questão de headers, que seria um caso análogo ao dos imports:
The threshold for this to be true is not precisely defined by law.
E por fim o parágrafo termina com um:
If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.)
Permitindo usar a lib mesmo no caso obscuro acima desde que "não use muito", o que acho que ainda está dentro dos usos normais dessas libs LGPL que encontramos por aí.
Moral da história: ao usar alguma coisa LGPL para uma aplicação fechada, lembre-se bem dos "princípos de OO" e deixe tudo bem separado e indepentende no seu código. Na hora de entregar o produto, o jar das libs também deve estar separado do seu jar.
Claro que se eu estou contrariando pessoas importantes da comunidade, deve haver alguma falha no raciocínio, e quem decide isso no final teoricamente é a justiça, normalmente composta por pessoas que não fazem muita idéia do que é software livre. Com a falta de termos legais mais claros e precisos nessas licenças, acaba ficando impossível argumentar qualquer coisa, então eu não me preocuparia em usar LGPL.
P.S.: não tenho nada contra a filosofia do software livre, acho até bem interessante e apóio o movimento, mas em certos casos acho que eles deveriam lembrar que nem todo mundo que está utilizando software livre é por causa da "liberdade", e deveriam ir mais direto ao ponto para essas pessoas entenderem quais são suas obrigações em relação ao movimento.
|
~ Site da Bani ~ |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/07/2003 23:21:17
|
louds
Moderador
![[Avatar]](/images/avatar/1e48c4420b7073bc11916c6c1de226bb.jpg)
Membro desde: 29/04/2003 23:09:15
Mensagens: 4061
Localização: São Paulo
Offline
|
A LGPL ate hoje nunca foi colocada em prova, diferente da GPL, que ja foi algumas vezes, como as licensas sao muito semelhantes, principalmente no que diz respeito da questao `viral' delas eu acredito que a LGPL seja legal.
Quando ao usar os drivers da mysql.com, existe sim problema pq eles sao GPL, o antigo mm.mysql que era LGPL.
|
http://www.kumpera.net/blog/
http://www.mono-project.com/
"Each individual should work for himself. People will not sacrifice themselves for the company. They come to work at the company to enjoy themselves."
Soichiro Honda |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/07/2003 23:37:30
|
Rafael Steil
Administrador
![[Avatar]](/images/avatar/8e296a067a37563370ded05f5a3bf3ec.jpg)
Membro desde: 31/08/2002 02:35:53
Mensagens: 5984
Localização: São Paulo
Offline
|
Ano passado a Ximian mudou o licenciamento de alguns produtos de GPL para a atual licensa deles. Na ocasiao mandei um email pro Stallman perguntando se essa troca de licensa era permitida, se nao estaria infringindo alguma regra ou algo assim.
Nao tenho mais o email original, mas lembro que ele disse que, como todo o codigo tinha sido feito pela Ximian, eles poderiam mudar a licensa da aplicacao como bem quisessem, pois o codigo era deles.
Ainda no mesmo email, ele comentou que, caso o core do programa fizesse uso de bibliotecas GPL externas, somente as partes de codigo diretamente ligadas as libs deveria ser GPL, o resto poderia ser na licensa original do sistema. Ou seja, o programa nao precsaria ser *transformado* em GPL so por causa que usa alguns codigos GPL...
Bom, no final das contas eh uma confusao soh isso
Rafael
|
"working code attracts people who want to code. Design documents attract people who want to talk about coding - Charles Miller"
http://rafaelsteil.com
http://twitter.com/rafaelsteil
http://www.jforum.net
http://www.flickr.com/photos/rafaelsteil |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/07/2003 08:45:28
|
louds
Moderador
![[Avatar]](/images/avatar/1e48c4420b7073bc11916c6c1de226bb.jpg)
Membro desde: 29/04/2003 23:09:15
Mensagens: 4061
Localização: São Paulo
Offline
|
Rafael, o proprio Stallman em varias ocasiões falou que a GPL implicava em tornar todo o programa GPL e não só 'partes' dele. Mas vou procurar isso a fundo e se não achar nada conclusivo, vou mandar um email para FSF perguntando a respeito.
Ahh, se voce pensar em um sistema unix comum, que é formado de varios processos se comunicando via pipes e arquivos, somente o programa que usou codigo GPL teria de ser GPL, não o sistema todo.
Ate onde eu sei, no caso de incorporação de código GPL, depende muito da interface usada para que a 'clausula viral' tenha efeito. Pipes, sockets e arquivos são 'vacinados' contra GPL.
|
http://www.kumpera.net/blog/
http://www.mono-project.com/
"Each individual should work for himself. People will not sacrifice themselves for the company. They come to work at the company to enjoy themselves."
Soichiro Honda |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/07/2003 10:03:03
|
Rafael Steil
Administrador
![[Avatar]](/images/avatar/8e296a067a37563370ded05f5a3bf3ec.jpg)
Membro desde: 31/08/2002 02:35:53
Mensagens: 5984
Localização: São Paulo
Offline
|
Bom, no final das contas o que acaba acontecendo eh que o pessoal ta com uma tendencia muito grande de fugir de programas GPL.. Ou seja, "... ah, o teu soft eh GPL? que pena, mas nao posso usar ao menos que voce mude a licensa...".
Imagine empresas de desenvolvimento de software ( e nao programadores ocasionais ), que ate querem usar mysql ( apenas para ilustrar um exemplo ), mas devido ao fato do driver ser GPL, somado a confusao e complexidade de tal licensa, acabam partindo para outro banco de dados ou algo do genero ( claro, nao eh facil imaginar uma situacao que chegue nesse ponto, mas eh suscetível de ocorrer, de qualquer maneira ).
Do *meu* ponto de vista radical, GPL soh serve para codigos sem finalidade de uso no mundo real, ou seja, demonstracoes de codigo ou sisteminhas mais simples. Usar GPL soa como "olha que legal o meu programa, mas eh soh para contemplar.. se quiser usar ele no teu sistema, eh melhor procurar outra solucao..".
Rafael
|
"working code attracts people who want to code. Design documents attract people who want to talk about coding - Charles Miller"
http://rafaelsteil.com
http://twitter.com/rafaelsteil
http://www.jforum.net
http://www.flickr.com/photos/rafaelsteil |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/07/2003 12:11:34
|
dukejeffrie
Virtual Machine Man
![[Avatar]](/images/avatar/c74d97b01eae257e44aa9d5bade97baf.png)
Membro desde: 21/08/2002 03:53:28
Mensagens: 661
Offline
|
louds wrote:
dukejeffrie wrote:
...
A GPL foi concebida pra proteger direitos autorais. Daí vieram uns carinhas e enfiaram no meio o "vírus da abertura", na esperanca de contaminar todo software do mundo. Só que com o vírus veio a doenca: ninguém quer usar GPL. Inventaram uma LGPL, pra abrir...
...
Ei, de onde voce tirou essa ideia? A nao ser que eu e o Richard Stallman estejamos completamente enganados, mas a GPL foi criada como copyleft'ed desde sempre.
Verdade, verdade, falei besteira!! O que eu disse nao é o que eu queria dizer.
De qq forma, a idéia inicial era manter o código livre livre, nada a ver com seus autores. Mas era pra impedir que fosse usado por "vampiros". O "vírus" veio da discussao sobre como fazer isso...
Eu tb evito a GPL. Usei a LGPL no Shob, justamente pra deixar que fosse usada como biblioteca pra produtos comerciais, assim mais gente poderia testar. Como disse a Bani, em Java vc consegue separar muito bem as libs, nao sei como funciona pra usar um JAR que é GPL num programa comercial.
Por mim, tudo o que eu fizesse seria livre, acho que é como a humanidade consegue evoluir mais rápido.
Bom, meus 3,1415629 cents...
|
Brevity is the soul of wit |
|
|
 |
|
|