¿Una gramática BPL de GPL infecta mi aplicación?

10

Estoy pensando en usar una gramática GPL Bison para mi propio compilador.

¿La gramática "infectará" mi analizador de modo que deba ser de código abierto?

La gramática, en términos de, la entrada de bison es GPL.

Stasik
fuente
2
Por favor aclarar ¿Quiere decir que la gramática (es decir, la entrada a Bison) es GPL o le preocupa usar Bison porque es GPL?
Craig
@Craig la salida de un programa generalmente no está bajo la licencia del programa que lo generó. Sin embargo, bisonincluye una cantidad considerable de código que está debajo de la GPL en su salida, lo que significaría que cualquier cosa que lo usara también estaría debajo de la GPL ... a menos que haya una excepción para poder usar bison para programas que no son de GPL .
@MichaelT Sí, pero si quiere decir que la gramática en sí está cubierta por la GPL (por ejemplo, fue tomada de un programa GPL), entonces la GPL de la gramática probablemente hará que su programa sea un trabajo derivado. Se necesita una aclaración de la pregunta real.
Craig
Bison genera analizadores para los idiomas LALR (1). Si su idioma es inherentemente LALR (1), es probable que haya algunos problemas bastante serios que dificulten su USO y su análisis. Probablemente obtendrá mucho más al simplificar su idioma lo suficiente como para poder escribir un analizador de descenso recursivo directo (RDP). Los PDR tienden a ser significativamente más fáciles de escribir y mantener que las gramáticas y acciones de análisis LALR (1).
John R. Strohm
para aclaración: quise decir la entrada de bisonte
Stasik

Respuestas:

7

Si bien Bison tiene licencia bajo la GPL, un analizador creado por Bison no está cubierto automáticamente por la GPL, al menos no con versiones recientes de Bison:

Condiciones para usar Bison

Los términos de distribución para los analizadores generados por Bison permiten utilizar los analizadores en programas no libres. Antes de la versión 2.2 de Bison, estos permisos adicionales se aplicaban solo cuando Bison generaba analizadores LALR (1) en C. Y antes de la versión 1.24 de Bison, los analizadores generados por Bison solo podían usarse en programas que eran software libre.

Fuente: http://www.gnu.org/software/bison/manual/bison.html#Conditions

Sin embargo, un analizador creado a partir de una gramática con licencia GPL probablemente también esté cubierto por la GPL, porque es un "trabajo basado en" la gramática (es una conversión automática, como compilar un programa).

Por supuesto, como en todos los asuntos legales, no hay una respuesta definitiva, e incluso los abogados y jueces pueden estar en desacuerdo, pero creo que este es el consenso general.

sleske
fuente
2
No creo que esté preguntando por la licencia de Bison, está preguntando por la licencia de la gramática.
Jörg W Mittag
3
La excepción de licencia real que le permite usar un analizador generado por Bison en proyectos no libres se puede encontrar aquí: git.savannah.gnu.org/cgit/bison.git/tree/src/parse-gram.h
Bart van Ingen Schenau
3
@ JörgWMittag: como Bison es un software GPL y algunas partes de Bison entran en la gramática generada, la licencia de Bison es muy relevante.
Bart van Ingen Schenau
@BartvanIngenSchenau: Sí, pero eso es irrelevante para la pregunta. El OP no estaba preguntando si Bison siendo GPL hace que su analizador sea un trabajo derivado de Bison, estaba preguntando si la gramática siendo GPL hace que su analizador sea un trabajo derivado de la gramática.
Jörg W Mittag
@ JörgWMittag: veo de dónde viene la confusión. Esto necesita una aclaración del OP
Bart van Ingen Schenau