[Discussioni] quesito GPL

Paolo Mascellani paolo a elabor.homelinux.org
Mer 21 Feb 2007 18:36:45 CET


Caro Simo,

>> Se trovo un file ".h" che contiene un centinaio di prototipi definite
>> esattamente allo stesso modo tranne che per i nomi dei parametri, che
>> sono insignificanti, io penso che qualcuno ha copiato da qualcun altro.
> 
> Io penso invece che sia bene chiedere, perche' se trovo che gli header
> della glibc sono uguali, in gran parte a quelli della libc di Sun non
> vado in giro ad urlare al lupo al lupo ma mi documento e "scopro" che
> esiste uno standard chiamato Posix.

Siamo perfettamente d'accordo e, nella mia posizione, questo rientra nel
fatto che, comunque, bisogna vedere caso per caso.

Precisiamo però: il fatto che esista uno standard serve a giustificare
la grande somiglianza delle due realizzazioni senza invocare la
copiatura, ma nulla toglie al fatto che esse siano comunque coperte dal
diritto d'autore. Se invece tale standard non esiste, o non esiste altra
spiegazione plausibile, allora si ricade nel discorso che la cosa più
verosimile sia che una delle due realizzazione è copiata dall'altra.

>> Faccio notare che tutta la discussione è nata da un quesito in cui si
>> parlava di una libreria, non di una singola funzione.
> 
> Si ma si parlava di headers, non dell'implementazione se ricordo bene.

Si parlava della realizzazione di un programma che utilizza una certa
libreria, ma che poi viene distribuito senza di essa, ma con le
istruzioni per installarsela.

>> Non ti seguo: nessuna di queste due rappresenta, secondo me, l'idea
>> dell'interfaccia del quick-sort: sono due implementazioni talmente
>> simili da poterle considerare uguali.
> 
> Sono uguali perche' _devono_ esserlo per lo standard Posix.
> O perche' altrimenti se cambio librerie non mi basta ricompilare, ma
> devo anche riscrivere la mia applicazione.
> Le interfacce sono cose "speciali".

Continuo ad avere l'impressione che stiamo parlando di due cose diverse
(btw: non è che "tagli" un po' troppo dalle cose cui rispondi? Mi pare
che si perda il filo del discorso in questo modo). Il mio punto era che
i due esempi che hai fornito non fossero esempi di idee, ma di sue
realizzazioni e che l'idea, invece, potesse essere quella che avevo
fornito io (che riporto per chiarezza): "la funzione che realizza
l'algoritmo 'quick-sort' ha come argomenti l'array da ordinare, la sua
lunghezza, la dimensione di un elemento ed una funzione che permette di
comparare due elementi".

> Se fosse giusto, come sostieni tu, considerare sotto (c) le interfacce
> allora addio glibc e tutte le librerie compatibili con predecessori
> proprietari. Sarebbero in palese violazione.

Ho spiegato sopra come la vedo su questo punto.

>>>> Infine, lo stesso ragionamento potrebbe essere fatto anche per
>>>> l'implementazione della funzione, non solo per la sua interfaccia;
>>>> vogliamo allora sostenere che neppure l'implementazione è coperta da
>>>> diritto d'autore? Non credo!
>>> No, non puoi fare lo stesso ragionamento.
>>> Tranne che per funzioni estremamente banali, ci sono n modi diversi di
>>> affrontare lo stesso problema ovvero "implementare la stessa idea"
>>> usando espressioni differenti.
>> Non è vero: quello che Francesco ha fatto e che tu hai ripreso può
>> essere fatto sistematicamente per funzioni complicatissime.
> 
> Ricordati che abbiamo descritto una interfaccia, se tu fai una
> interfaccia complicatissima (con centinaia di parametri) te la tieni,
> non mi interessa usarla :-)

Mi pare che perdi ancora il punto; il discorso si articolava in questo
modo: il ragionamento fatto da Francesco per gli header delle funzioni
si può fare pari pare anche per le implementazioni delle stesse. Da
questo punto di vista, non ha alcuna rilevanza che possa essere fatto in
uno, due o milioni di modi diversi.

Inoltre, il fatto che una cosa sia coperta da diritto d'autore, con
tutto il rispetto che ti porto, è indipendente dal fatto che quella cosa
ti interessi o meno. :D

> Ma una interfaccia e' semplice e non da molto idea di quello che ci sia
> dietro, ma da _accesso_ _standardizzato_ a quello che ci sta dietro.

D'accordo; almeno per una buona interfaccia. Qui però, lo ribadisco, si
esula dal buono e dal cattivo e, sono convinto, se ci mettessimo a
discutere su cosa sia buono e cosa cattivo ...

>> Si tratta di
>> una traduzione pedissequa da un linguaggio ad un altro. Quello che io
>> sostengo è che in questo modo non si rappresenta l'idea, ma se ne dà
>> semplicemente un'altra rappresentazione ugualmente formalizzata. Le
>> idee, invece, non sono formalizzate (mi verrebbe da dire che non lo sono
>> mai, ma ... mai dire mai).
> 
> Ok, ma che c'entra?

Mi confermi che hai perso il filo :-( Stavamo parlando del fatto che il
diritto d'autore non copre le idee e, quindi, argomentavo su cisa sia
idea e cosa no.

>>> Quindi nel caso del corpo della funzione non c'e' il rischio di
>>> "restringere" l'accesso all'idea, per cui il diritto d'autore e'
>>> perfettamente applicabile.
>> A me sembra che il problema non sia il corpo o la testa, ma che si
>> ritorni semplicemente al discorso che se una cosa è troppo semplice è
>> troppo difficile distinguerla da una sua implementazione alternativa ed
>> è quindi opportuno soprassedere, proprio anche in virtù del fatto che
>> l'idea è indisponibile al diritto d'autore.
> 
> Anche, hai descritto le interfacce e mi stai dando ragione ;-)

No: può darsi che mi stia esprimendo male e che tu creda che ti sto
dando ragione, ma ti assicuro che non è così, stai tranquillo :-).

> A parte gli scherzi, no, non e' questo il punto, avrei potuto allegarti
> tu .h lunghi presi da libc di Sun e da glibc. Imo non sono coperti (gli
> header! non le librerie!).

Da tutto il discorso che hai fatto, se ho ben capito, l'unico motivo per
cui ritieni questo è che discendono da uno standard, ma, come detto
sopra, in primo luogo non è sempre così (intendo: per tutte le librerie
in generale, non per tutte le implementazioni di Posix), in secondo,
questo non implica che le interfacce non siano coperte da diritto
d'autore, ma solo che io posso sostenere di averla realizzata in modo
indipendente.

Tanto per chiarire, se, in via del tutto ipotetica, utilizzando un
qualsiasi mezzo, si potesse dimostrare che gli header della glibc sono
stati effettivamente copiati dalla libc di Sun e non realizzati
indipendentemente a partire da uno standard comune, allora io penserei
che è stata fatta un'azione contraria al diritto d'autore.

>> Credo che tu sappia che sono stato in prima linea con te ed altri a
>> difendere la non brevettabilità del software. Non vedo cosa c'entra la
>> brevettabilità con quello che sto dicendo. Io sto parlando del diritto
>> d'autore.
> 
> Anche il diritto d'autore puo' essere distorto pesantemente. Vedevo solo
> un nesso tra il tuo discorso e il discorso che fa chi usa i brevetti.

Il nesso non c'è (a parte il fatto che tu e, probabilmente, altri, siete
contrari ad entrambi).

> Ovvero che si finisce per coprire l'idea ("proteggendo" tutti i modi di
> implementarla) e non la specifica implementazione.

Proteggendo tutti i modi di implementarla? Dipende da cosa intendi.

Se per tutti intendi che fatta un'implementazione di un'idea in un modo
impedisco ad altri di farne altre implementazioni, allora sono d'accordo
con te. Infatti io non ho mai detto né pensato questo.

Io invece, intendo che fatta un'implementazione di un'idea, solo
quell'implementazione è protetta dal diritto d'autore. Questo, però, è
vero per ogni implementazione e, in particolare, si applica a quel tipo
particolare di implementazione di un'idea che è il prototipo di una
funzione.

> Io credo che tu sottovaluti pesantemente l'effetto che la tua posizione
> avrebbe se fosse quella adottata per il diritto d'autore e messa in
> opera.

E io credo che tu non l'abbia capita e che, quindi, non hai la
possibilità valutarne gli effetti.

Ciao, Paolo.

-- 
Paolo Mascellani - paolo a elabor.homelinux.org
eLabor sc - via G. Garibaldi 33 - 56124 Pisa (050 970 363)
http://elabor.homelinux.org - http://elabor.biz



More information about the discussioni mailing list