Re: [Question]:Question about bison adding GPL copyright to the parser files generated by bison and yacc.c

Hans Åberg <[email protected]>
Newsgroups gmane.comp.parsers.bison.general
Message-ID <[email protected]>
> On 26 Jan 2019, at 23:54, Christian Schoenebeck <[email protected]> wrote:
> 
> On Samstag, 26. Januar 2019 22:29:08 CET Hans Åberg wrote:
>>> No, that's not what the exception sais. The exception applies (and hence
>>> the freedom to distribute a Bison generated parser under any arbitrary,
>>> different license than GPL) only if the generated parser is not itself a
>>> parser generator. This is not as obvious as you might think. It really
>>> depends on what his generated parser is capable to do.
>> 
>> From a legal point of view, copyright applies to the code in the skeleton
>> file, as the other part is considered machine generated, like in an editor,
>> and not copyrightable.
> 
> Yes, the copyright applies to the skeleton. But if the exception does not 
> apply, and since your Bison generated parser contains the skeleton, the result 
> would be that your entire application would be subject to the GPL.

And that was the case in some earlier versions.

> So the point of whether or not the exception applies to your Bison generated 
> parser, is crucial if you intend to use Bison for developing a proprietary 
> application.

Indeed.

>>> I give you a simple example: let's say you used Bison to develop a tool
>>> which converts source code from one programming language A to B. Now you
>>> might think this is not a parser generator. Well, it was obviously not
>>> your intention. But now consider somebody uses that conversion tool for
>>> converting a parser originally written in programming language A to
>>> language B.
>>> 
>>> Right, your Bison generated conversion tool just generated a parser.
>> 
>> A parser generator is not merely a program that generates a parser, but does
>> so from a grammar [1]. So the intent of the exception, I think, is that you
>> cannot use the skeleton as a part of a program like Bison, but perhaps
>> there is the need for some clarification.
>> 
>> 1. https://en.wikipedia.org/wiki/Compiler-compiler
> 
> That Wikipedia article sais "The input *may* be a text file containing the 
> grammar written in BNF ... , although *other* definitions exist.", immediately 
> followed by another type that is analogous to my example: meta compilers.
> 
> It is clear what the intention of the exception was: a) allowing people to use 
> Bison for generating parsers also for propriety projects, but preventing b) 
> that somebody simply takes Bison's skeleton source code, adds the missing 
> pieces and distributes an entire unGPLed version of Bison.

That is how I parse it, too.

> But if you intend to use Bison for proprietary purposes, you should be aware 
> that the current wordings of the exception go far beyond of what was probably 
> intended for case b) and might thus indeed lead to a potential legal issue for 
> your company if your Bison generated parser only has the smallest chance of 
> being capable to generate another parser.

The term "compiler-compiler" felt out of use, replaced by "parser generator", which I also prefer, and other renderings of that latter might be what confuses it.

> Many big IT companies out there are using Bison extensively for generating 
> their arsenal of meta compilers, and if you take the exception text literally, 
> and if they even used a GPLv3 Bison version ... well you get the idea.

The idea of GPL is to block proprietary use.

> And this issue is not just limited to meta compilers. There are many other non 
> obvious use cases where you might theoretically get into the same situation.

Maybe Akim can clarify.



_______________________________________________
[email protected] https://lists.gnu.org/mailman/listinfo/help-bison
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.