LGPL richiede che, se un programma utilizza la libreria LGPL-ed, gli utenti devono essere in grado di ricollegarsi il programma con una versione diversa della libreria:
...
d) Do one of the following:
0) Convey the Minimal Corresponding Source under the terms of this License, and the Corresponding Application Code in a form suitable for, and under terms that permit, the user to recombine or relink the Application with a modified version of the Linked Version to produce a modified Combined Work, in the manner specified by section 6 of the GNU GPL for conveying Corresponding Source.
1) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (a) uses at run time a copy of the Library already present on the user's computer system, and (b) will operate properly with a modified version of the Library that is interface-compatible with the Linked Version.
...
Tuttavia, in alcuni casi, ciò può comportare notevoli difficoltà. In particolare, i programmi Haskell sono quasi sempre compilati staticamente. Inoltre, il compilatore esegue ottimizzazioni cross-module quindi non è possibile prendere una parte del codice e sostituirlo con un altro. Quindi è molto difficile soddisfare questa condizione. (Vedi questo link su Haskell Wiki.)
Il collegamento dinamico sarebbe una soluzione, ma in molti casi questo non è possibile. Ad esempio:
- Alcune piattaforme potrebbero non avere alcun collegamento dinamico.
- Alcune lingue non hanno la possibilità di collegamenti dinamici. Oppure, non è possibile creare moduli multipiattaforma.
- In alcuni casi il collegamento dinamico impedirebbe importanti ottimizzazioni. Mentre direi che questo è raramente un problema serio, in linguaggi come Haskell la perdita di prestazioni potrebbe essere considerevole.
Pertanto, sto cercando una licenza standard simile a LGPL che non richieda la possibilità di ricollegare (e capisco che questo rimuova un po 'di libertà data agli utenti). Alcuni progetti utilizzano la propria modifica di LGPL, ad esempio wxWidgets . Ma preferirei usare una licenza standard che è in qualche modo più ufficiale, forse controllata da alcuni esperti di legge e (L) compatibile con GPL. Ce ne sono così?
(Inoltre sarei interessato a sapere se ci sono alcune conseguenze impreviste di una tale modifica di LGPL.)