Comments (2)
Under normal circumstances, I wouldn't even think about a license for the code that is generated by jacc
; it is just an artifact of the compilation process, much like the .class
files that might be produced when you run a Java compiler. The issues that you've mentioned in relation to Bison do not apply here because there are no substantial parser templates, GPL-ed or otherwise, in the jacc distribution.
In some situations, it may be useful to include jacc
-generated Java code in a source distribution so that users can compile and run a program without having to install jacc
. So long as both the source and generated code are included in the distribution, I would expect the generated code to have the same license as the source, with no requirement for them to use the same license as jacc
itself.
The statement above does not address situations where jacc
-generated code is distributed without the original .jacc
source code. Such uses should be discouraged because they will substantially limit the opportunities for understanding and modifying the generated parsers.
from jacc.
Thanks for the comments! In my scenario (MIT-licensed project), I am including the .jacc
grammar file and the resulting generated parser .java
file in the source, so that the usual end-user build process doens't need invoke jacc
and I do not include jacc
itself as part of the project.
I don't think it is that obvious that the output jacc produces wouldn't be covered under the GPL. The parser doesn't include large portions of GPLed code, but it does include some boilerplate code like the yyexpand
function whose code presumably falls under the GPL. Whether it is substantial enough to cause the whole work to be considered a "derived work" and hence fall under the GPL is certainly not clear to me. I have been told that even a single line can be enough, depending on your circumstances.
You mention compilation with javac
- I'm not sure on the licensing situation there, but I do now that gcc includes specifically includes an exception from the GPL for the binaries produced by gcc compilation since otherwise it might be unclear whether such binaries would fall under the GPL since various bits of GPL'd code get embedded in as part of the compilation process.
I'll continue using jacc in my MIT-licensed project based on your comments here since after all it is only a small personal project for research purposes, but if you had a few minutes you might want to consider making this explicit with an exception note in the license. I would rest easier :).
from jacc.
Related Issues (2)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jacc.