help-bison
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: What is a Parser Skeleton?


From: Hans Åberg
Subject: Re: What is a Parser Skeleton?
Date: Wed, 12 Apr 2023 13:23:52 +0200

[Please cc the Bison list, as others can follow the issue and tune in if 
needed.]

> On 12 Apr 2023, at 11:18, Johannes Veit <leerstring@gmail.com> wrote:
> 
> Hello and sorry for the long pause and tanks for your explanation!It makes 
> sense, but I don’t see a proper connection to the Bison Exception.
>  In my understanding of the text, the exception comes in place, when I (as a 
> user of bison) going to build an own parser generator using bison.
…
> My interpretation is, that it is more than protecting the rights of the 
> skeletons, it is rather a protection against a forked* parser generator under 
> e.g. proprietary terms.
> *forked=>I know, that it is not forking in the sense of forking a repo. What 
> I mean is: using bison to generate it, instead of writing it with own hands

In my interpretation, there are two parts:

The skeleton file contains handwritten parts which are subject to copyright, 
and in normal use is copied over to the generated parser. So one wants to avoid 
the full GPL to apply, thereby restricting the copyright of the program it is a 
part of. The same thing is used for C/C++ libraries: you can write and compile, 
if you so will, proprietary programs using GCC and distribute them without GPL 
applying to them.

In addition, for special use, one may copy the whole skeleton, modify it, and 
include it in a program, as though it was LGPL, but not if that program is in 
itself a parser generator that generats parsers; then the full GPL will apply 
for that program.

This latter, to make ones own edited skeleton file, I do not recommend unless 
it is really needed, because it may change between Bison versions, and it is 
hard to keep it in sync. So it is better trying to get special feature into the 
Bison project.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]