MIT/Lua License & Assignment of copyright

51 views
Skip to first unread message

Jeffrey Kegler

unread,
Jan 20, 2015, 11:10:11 PM1/20/15
to Marpa Parser Mailing LIst
I want to ask opinions about two licensing changes I am thinking of

1.) Switching Libmarpa to the MIT/Lua license.  Currently there are some companies that forbid their employees to read LGPL code, because of the danger to their IP in the code that those employees write.  In the case of Libmarpa, I *want* people to read my code -- they can read my papers, and the code supplements and illustrates those papers, so it makes little sense to restrict it.  Moving to an MIT license means that people will be able to use the Libmarpa code freely in proprietary code.  There is a downside to this, but the Lua folks and increasingly the open source community seem to be embracing this trade-off as a win.

2.) Changing both Marpa::R2 and Libmarpa so that anyone contributing code assigns the copyright to me.  The upside of this is that I can change the license.  That's also the downside -- I, or someone who managed to legally take over the copyright from me, would have the right to change to a proprietary license.  I don't want to minimize this danger -- open source software being taken proprietary is something that happens a lot.

I think the trade-offs are in favor of copyright assignment to me.  My plan is to use the right to change the license to make licensing more liberal.  And note that current and past versions would remain subject to the old open-source licenses -- neither I or anyone else has the right to rescind those licenses.  You could always "re-free" the software by starting over from a fork of a previous open-source version.  It's a hassle, but it can be done if needed.  And in a sense, it's a danger you are already running -- even if I can't change the licensing, I might become a flaky project leader, with the same practical effect.

I'm keeping Marpa::R2 on the LGPL, at least for the time being.  With Libmarpa the asymmetry between by completely-open Theory papers and my LGPL'd code makes the trade-off pretty clear.  And nobody but me has made any significant contribution to Libmarpa.  With Marpa::R2, both these factors are less clear.  And in some months I expect it to be replaced with a Kollos-based Marpa::R3, so that it's not worthwhile to spend a lot of time rethinking Marpa::R2 licensing.

A final note: Libmarpa contains some code derived from LGPL'd code written by others -- GNU's obstack's, and Ben Pfaff's AVL code.  This code must and will remain LGPL'd.

Thanks, jeffrey

Andrew Kirkpatrick

unread,
Jan 20, 2015, 11:54:51 PM1/20/15
to marpa-...@googlegroups.com
Hi Jeffrey,

I'm no licensing expert, but it seems to me if a company forbids
employees to read LGPL code out of fear, that is their choice. We live
in a world where capital gets its way over labour far too often - so
much so it hurts capital growth itself. I think software freedom and
copyleft, even the limited LGPL, are important and that going too
permissive has its own negative consequences for the gift economy we
enjoy.

Its your code and project, whatever you choose I'm just grateful for
your immense contribution.

Cheers,
Andrew Kirkpatrick

On 21 January 2015 at 14:40, Jeffrey Kegler
> --
> You received this message because you are subscribed to the Google Groups
> "marpa parser" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to marpa-parser...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

Jeffrey Kegler

unread,
Jan 21, 2015, 12:37:00 AM1/21/15
to Marpa Parser Mailing LIst
@Andrew: Thanks for your kind words.  One of my motivations was a recent reddit exchange, where someone under a "no reading GPL code" restriction and his employer got really beat up over this by other redditers.  I thought a lot about the trade-offs -- on one hand he was very sincerely interested in my work.  On the other hand, if he used my ideas at work, his improvements would very likely disappear into a proprietary compiler I would never hear about and probably could not afford to use.

On reflection, I believe that Marpa's core is mathematics, and I just don't feel comfortable with putting anything but the most liberal of licenses on mathematics.

I think as you get to layers above Libmarpa, and away from the math, more restrictive licenses make more sense.  For someone to slap a more restrictive license on a parser built on top of Marpa would not bother me a bit.  And if I were Linus Torvalds deciding about Linux, I would not budge a centimeter from the GPL.

Ruslan Shvedov

unread,
Jan 21, 2015, 12:50:16 AM1/21/15
to marpa-...@googlegroups.com
Also not a licensing expert or lawyer, I think a change that breaks the barriers to use of software or otherwise makes it more accessible for people is ultimately a good thing. 

However, a licensing choice of change, which carries a symbolic value, among others, can break barriers for some people and build them for the other. 

A license is a sort of interface so, perhaps, that's a case "to imitate Larry Wall" and choose a dual MIT/(L)GPL licencing.

MIT is ok, btw. At the very least, choice of license becomes a non-issue for me if I decide to release, e.g., lua bindings to libmarpa.

--

David Yingling

unread,
Jan 21, 2015, 11:59:57 PM1/21/15
to marpa-...@googlegroups.com
On Tue, 20 Jan 2015 20:10:10 -0800
Jeffrey Kegler <jeffre...@jeffreykegler.com> wrote:

> I want to ask opinions about two licensing changes I am thinking of
>
> 1.) Switching Libmarpa to the MIT/Lua license. Currently there are some
> companies that forbid their employees to read LGPL code, because of the
> danger to their IP in the code that those employees write. In the case of
> Libmarpa, I *want* people to read my code -- they can read my papers, and
> the code supplements and illustrates those papers, so it makes little sense
> to restrict it. Moving to an MIT license means that people will be able to
> use the Libmarpa code freely in proprietary code. There is a downside to
> this, but the Lua folks and increasingly the open source community seem to
> be embracing this trade-off as a win.
>

I'm all for it. Marpa's complexity makes someone else getting inspired by your
paper to implement it with a less restrictive license basically zero especially
if their only reason for doing so is religiously favoring one license over
another (Like the GNU folks favoring the GPL or OpenBSD favoring the ISC.).

> 2.) Changing both Marpa::R2 and Libmarpa so that anyone contributing code
> assigns the copyright to me. The upside of this is that I can change the
> license. That's also the downside -- I, or someone who managed to legally
> take over the copyright from me, would have the right to change to a
> proprietary license. I don't want to minimize this danger -- open source
> software being taken proprietary is something that happens a lot.
>
> I think the trade-offs are in favor of copyright assignment to me. My plan
> is to use the right to change the license to make licensing more liberal.

I don't find this reason very compelling. In order to do copyright assignment,
you have to contact all of your past contributors, and convince them to fill
out a form of some kind. However, if all you really want to do is change the
license this one time; instead, you could contact them all, and ask them to
agree to license their patches back to you and everyone else under whatever new
license you choose such as MIT or BSD or ISC or public domain or whatever. This
way you can do the relicense you want to, but avoid angering some people due to
ideological concerns (mentioned below), and having to administer whatever
copyright assignment scheme you want.

> And note that current and past versions would remain subject to the old
> open-source licenses -- neither I or anyone else has the right to rescind
> those licenses. You could always "re-free" the software by starting over
> from a fork of a previous open-source version. It's a hassle, but it can
> be done if needed. And in a sense, it's a danger you are already running
> -- even if I can't change the licensing, I might become a flaky project
> leader, with the same practical effect.

You're ignoring the most important issue with copyright assignment. Just as
with the issue of GPL vs BSD(MIT,etc...), people hate copyright assignment. I
do. Some organizations use it so they can make some money like MySQL AB. did
back before Sun bought them: companies could buy a "real" license from MySQL
AB. and use it in their proprietary products allowing them to "bypass" the GPL,
because they bought a license direct from the only owner MySQL. MySQL AB.
needed the copyright assignment to protect this business model. Others use it
like the FSF does so they can have a better case when they sue people who
violate the GPL. (https://www.gnu.org/licenses/why-assign.html).

I don't know why I hate copyright assignment. I think its just philosophical or
perhaps ideological, which is much worse (Think Vi vs. Emacs). I just
don't like the idea of the author of something I want to spend time
contributing to effectively "stealing" my work just so he could potentially
change the license in the future without needing my permission or rewriting my
code. I suppose its not stealing, because I'm choosing to give you my
copyright, but I'm not freely choosing to do so, because you're forcing me to
in order for my code to be accepted into your project.

The other problem of copyright assignment is the actual paperwork needed to do
so. Obviously everyone who submits code and then does the copyright assignment
is not going to need to hire a lawyer to do so. I wondered what the FSF does.
Apparently it's quite a process.
(https://www.fsf.org/licensing/assigning.html). There is even an "Assignment
Administrator". I'm sure you could find a much simpler process, but would it
be as rigorous, and able to stand up in court if needed?

Just as some people seeing its LGPL, and getting all angry that Marpa fails to
use their license of choice (BSD or MIT or something similar like ISC like
OpenBSD uses), some people will get all angry that Marpa has copyright
assignment. I already have. I've even bothered to write this email to the list
where I'm a long time lurker. I just really hate copyright assignment. MySQL
AB. using it to make some money I was ok with. FSF being crazy zealots
requiring copyright assignment just to make any potential lawsuits more
effective, I'm ok with. But some cool small project like Marpa using it just to
potentially change the license in the future just makes me surprisingly angry
(ideology is powerful stuff). Ironically, potentially angering people originally
inspired you to make this move (the reddit post).

>
> I'm keeping Marpa::R2 on the LGPL, at least for the time being. With
> Libmarpa the asymmetry between by completely-open Theory papers and my
> LGPL'd code makes the trade-off pretty clear. And nobody but me has made
> any significant contribution to Libmarpa. With Marpa::R2, both these
> factors are less clear. And in some months I expect it to be replaced with
> a Kollos-based Marpa::R3, so that it's not worthwhile to spend a lot of
> time rethinking Marpa::R2 licensing.
>
> A final note: Libmarpa contains some code derived from LGPL'd code written
> by others -- GNU's obstack's, and Ben Pfaff's AVL code. This code must and
> will remain LGPL'd.
>
> Thanks, jeffrey
>

Jeffrey Kegler

unread,
Jan 22, 2015, 12:41:00 AM1/22/15
to Marpa Parser Mailing LIst
To clarify -- I have no plan to contact anybody re copyright assignment.  I also have not plan to require, or even to accept, any paperwork.  There will be no form to sign.  I'll just add a line to the Github README.  This will not help with previous contributions, but there have been no significant contributions to Libmarpa from anybody but me, and I plan to leave the license of Marpa::R2 as it is.

I will not accept any paperwork because I don't want to spend the time, or ask others to do so.  Larry Wall tells me he's never required any paperwork and has yet to have any problems.  That doesn't mean there won't be problems, but that's possible no matter what you do.

Also to clarify, I am not moving to the MIT License to avoid angering people.  I was perfectly happy to have folks angry at me for using the LGPL.  I was less happy to be ignored.  And I do want them to read and use Libmarpa, and to be able to do on terms more in line with the traditions for mathematics.

David Yingling

unread,
Jan 23, 2015, 4:06:55 AM1/23/15
to marpa-...@googlegroups.com
On Wed, 21 Jan 2015 21:40:59 -0800
Jeffrey Kegler <jeffre...@jeffreykegler.com> wrote:

> To clarify -- I have no plan to contact anybody re copyright assignment. I
> also have not plan to require, or even to accept, any paperwork. There
> will be no form to sign. I'll just add a line to the Github README. This
> will not help with previous contributions, but there have been no
> significant contributions to Libmarpa from anybody but me, and I plan to
> leave the license of Marpa::R2 as it is.
>
> I will not accept any paperwork because I don't want to spend the time, or
> ask others to do so. Larry Wall tells me he's never required any paperwork
> and has yet to have any problems. That doesn't mean there won't be
> problems, but that's possible no matter what you do.
>

What project of Larry Wall's uses copyright assignment? I think Perl5 is
GPLv1/Artisticv1, and Perl6 is Artistic 2. I don't know what license patch is
or was maybe BSD or GPL? Do any of these actually _require_ copyright
assignment?

After some googling and searching perl's mailing lists
(http://perl.markmail.org/search/?q=%22copyright+assignment%22#query:%22copyright%20assignment%22+page:2+state:facets),
it seems some big contributors of Perl 5, 6, and Parrot have signed copyright
assignment paperwork assigning their copyright to the Perl Foundation or The
Parrot Foundation, but copyright assignment seems to be optional *not* required.
All three projects seem to be willing to take patches without copyright
assignment. Perhaps that's how Larry Wall doesn't have to deal with any
paperwork, because his projects freely and fully accept patches without
copyright assignment, but big contributors are asked to sign. It seems the TPF
or TParrotF just get big contributors to sign over their copyrights if they
choose to do so, but nowhere does there seem to be an actual requirement
anywhere. For example, none of their README or LICENSE files mention copyright
assignment anywhere.

Yeah, paperwork would just be a waste of time, but without it is copyright
actually assigned? I don't know I'm not a lawyer, but I think the answer is no.
After some googling, I found this page:
http://www.bitlaw.com/copyright/license.html
It says copyright is "a personal property right" (at least in the US), so I
don't think you stating in a README file that your project using copyright
assignment is enough for my copyright to actually be assigned to you. I think
you need to buy my property from me, or I need to actually sign some annoying
piece of paper for it to actually happen. So, without the annoying piece of
paper, your project using copyright assignment does not actually have copyright
assignment since you haven't bought your contributors' personal property (their
copyright) from them.

So, if copyright assignment without proper paperwork and lawyers is powerless,
and would never stand up in court, why bother with it? It just angers some
people over ideological concerns mentioned in my prior email without providing
any useful benefits, because legally an actual signature is needed for
copyright assignment to happen, so without the signature there is no actual
copyright assignment.

While googling I found a great article on
lwn.net about copyright assignment angering people:
https://lwn.net/Articles/414051/#copyright-assignment

Also, I think you might have "copyright assignment" confused with "contributor
license agreements" (CLAs). "copyright assignment" is when a company or
non-profit (you might be the first individual without some non-profit
foundation for their project actually using copyright assignment) forces
contributors to sign annoying paperwork giving their copyright for their
contributions back to the company or non-profit. While, a CLA is an annoying
paper you sign or perhaps just fill out a form on a Website (like Canonical
does) is an agreement where you retain copyright of your contributions, but you
grant a license to the company or non-profit.

A great example of copyright assignment vs CLAs is Canonical's infamous
"Canonical Contributor Agreement", whose brief history is well explained here:
http://agateau.com/2013/my-stance-on-cla/
Basically what happened was Canonical announced their copyright assignment
policy, but hid it under the misnomer "Canonical Contributor Agreement". Once
it was outed as copyright assignment there was a massive backlash against
Canonical with many users and contributors ditching Canonical and Ubuntu in
droves. Apparently it was so massive, Canonical was forced to ditch copyright
assignment, and use a CLA instead to make their lawyers happy. This managed to
appease some or most of those that previously were angered by the original
copyright assignment policy.

Any sort of parsing is really complicated. Even regexes are, but they're so
useful everyone struggles for a while to learn them. Parsing is even more
complicated. Even BNF, which is pretty simple, is really complicated to use to
model any sort of language. Marpa is also really complicated to learn and use.
Or at least there is enough of a belief that it is really complicated. That it
keeps people from even beginning to learn and use it sorta like how Calculus is
really infamous and notoriously difficult in highschool or college. All I'm
saying is Marpa already has this natural barrier preventing people from using
it already. It does not also need powerless (due to no paperwork) copyright
assignment angering people due to ideological reasons also keeping people from
using it. Furthermore, a comment on the lwn.net article mentions how Apple
"effectively requires copyright assignment for the LLVM/Clang suite, though no
one really follows it. Since the license is BSD-ish, there's no real practical
difference anyway." I'm no license expert, but the MIT license is similar to
the BSD license (both not copyleft licenses...), so choosing such a free
license effectively limits whatever power using copyright assignment gives you.

Also, adding copyright assignment is directly against the spirit of changing
the license from a fairly restrictive LGPL to a less restrictive MIT. Because
by changing it from only LGPL to MIT + copyright assignment, you've effectively
changed nothing: LGPL has copyleft provisions while MIT + copyright assignment
has copyright assignment restrictions. So, you're not actually making it more
open more academic like; instead, you're only replacing one restriction with
another. People see LGPL get annoyed its copyleft. People see MIT + copyright
assignment get annoyed its copyright assignment. Same thing just different
restrictions.

Finally, without the paperwork, copyright assignment is powerless, and most
likely won't stand up in court. And if the copyright assignment is powerless,
all you get for adding it to your projects is angering some people causing them
not only to avoid contributing to marpa, but also avoid even using it in their
project, because if you're against copyright assignment, you can't use a
library that has copyright assignment, because if there is a bug you find, you
can't fix it yourself, because you'd have to give up your copyright in order to
contribute your patch, but you're against doing so preventing you from even
considering using the library.

> Also to clarify, I am not moving to the MIT License to avoid angering
> people. I was perfectly happy to have folks angry at me for using the
> LGPL. I was less happy to be ignored. And I do want them to read and use
> Libmarpa, and to be able to do on terms more in line with the traditions
> for mathematics.

Oh, now I get it. The reddit post you mentioned was some people checking the
license, and if its GPL ignoring it, and not even reading it. This sucks. Marpa
is probably not patented, so some one could turn your paper into some MIT
licensed code, but that's unlikely given the difficulty.

This whole issue reminds me of the most amazing data structure I've heard of:
Judy Arrays. A totally amazing data structure that's cache-aware that can
replace virtually all data structures people use: AVL trees, Red-Black trees,
any other tree, arrays, even hashes (associative arrays). Its supposedly even
faster that all of the algorithms everyone uses and is taught in school, and
only arrays and linked-lists use less memory. It's cool and just like Marpa
it's insanely complicated. Its Website has a "Judy Arrays in 10 minutes"
article that barely scratches the surface of how amazing the algorithm is, and
how amazingly complicated it is. It replaces simplicity with amazing
performance. Its Website is http://judy.sourceforge.net/ , but as its wikipedia
page mentions its patented by HP till 2020, so everybody avoids it like the
plague, because its patent has infected it just like the plague. Will copyright
assignment be Marpa's plague causing everyone to steer clear of it, and avoid
it even more than the copyleft?

Thanks for marpa. Sorry for the super long and dense post. I just want to avoid
Marpa having a gigantic flashing banner ad in its README file that many people
will interpret as "Don't touch me". Especially if without proper paperwork the
"Don't touch me" sign has no power other than as a gigantic billboard forcing
many potential users or contributors to avoid using Marpa,
Dave.

Andrew Kirkpatrick

unread,
Jan 23, 2015, 4:21:42 AM1/23/15
to marpa-...@googlegroups.com
Just as an aside, and a data point, this JS port of (some of?) Marpa
is MIT licensed:

https://github.com/Hardmath123/nearley

BTW I wonder what the quality of this port is.

Jeffrey Kegler

unread,
Jan 23, 2015, 5:42:33 PM1/23/15
to Marpa Parser Mailing LIst
@David: Thanks for your research in the matter which, however, mostly confirms me in thinking of copyright assignment as a good idea.  If you favor liberal licensing like the MIT license, you should perhaps think kindly about it, too, because ...

1.) Not having had copyright assignment in the past has already hurt Marpa license liberalization and continues to.  At this point, I think using the LPGL for Marpa::R2 was a mistake but, since I didn't ask for copyright assignment, I cannot liberalize it without dealing with that issue.  The result is that Marpa::R2 will probably stay as it is.

I am able to change Libmarpa, but only due to lucky circumstances -- it's code is so opaque that only I have made significant contributions, so the effect as if I had required copyright assignment.

2.)  The serious "blowback" from copyright assignments in your research is from using it to put code under restrictive (and in some cases deceptive) licenses; and/or from annoyance at the paperwork.  Neither is a problem here.

3.)  Above I mentioned the upside of copyright assignment for liberal licensing.  Its downside is limited.  Liberal licenses already allow anybody to exercise most of the rights the copyright holder has.  As copyright holder, I could turn around and put the current codebase inside a proprietary wrapper, but so could anybody else under the MIT license.

4.) Will having no paperwork undermine enforceability?  Maybe.  But if it does, we've lost nothing.  And with liberal licensing, enforcement is less likely to be challenged -- the GPL folks have to sweat these things, because folks have an incentive to try to break their license.  With the MIT license, there's not much to break.

The copyright assignment and the change to liberal licensing really go together.  And the MIT license is getting a favorable reception.  Perhaps the line about copyright assignment in the README will turn some folks off, which is unfortunate, but I hope they'll understand.

Note, by the way, that if I start asking for copyright assignment, and it turns out to be a dumb idea, I can always reverse course.  I if don't, that has already proved to be a bad idea, and one whose effects will continue to worsen.

David Yingling

unread,
Jan 24, 2015, 4:58:07 AM1/24/15
to marpa-...@googlegroups.com
On Fri, 23 Jan 2015 14:42:32 -0800
Jeffrey Kegler <jeffre...@jeffreykegler.com> wrote:

> @David: Thanks for your research in the matter which, however, mostly
> confirms me in thinking of copyright assignment as a good idea. If you
> favor liberal licensing like the MIT license, you should perhaps think
> kindly about it, too, because ...
>
> 1.) Not having had copyright assignment in the past has already hurt Marpa
> license liberalization and continues to. At this point, I think using the
> LPGL for Marpa::R2 was a mistake but, since I didn't ask for copyright
> assignment, I cannot liberalize it without dealing with that issue. The
> result is that Marpa::R2 will probably stay as it is.
>

You could probably email the 7 contributors that github says Marpa::R2 has, and
easily ask them for permission to change the license to MIT, and then maybe
commit their replies to github say in the new LICENSE file. Unless one or more
of them are die hard into GPL, you could probably do this without to much fuss.

> I am able to change Libmarpa, but only due to lucky circumstances -- it's
> code is so opaque that only I have made significant contributions, so the
> effect as if I had required copyright assignment.
>

I think you overestimate how many people have avoided marpa due to LGPL
avoidance. I think most people avoid it simply because its a parsing library,
and since parsing is quickly forgotten after everyone's Dragon book class,
nobody bothers even trying to parse anything. Only those interested in parsing
something bother relearning parsing theory, BNF, parsing algorithms and
libraries. The Earley algorithm is decently well known, for example, a book I'm
reading right now "Programing Language Pragmatics" mentions it in its parsing
chapter, but says it and some other algorithm for parsing any context-free
grammar are O(n^3) failing to mention the work of Joop Leo, John
Aycock, R. Nigel Horspool, and yourself making it O(n) most of the time
and O(nlogn) worst case.

> 2.) The serious "blowback" from copyright assignments in your research is
> from using it to put code under restrictive (and in some cases deceptive)
> licenses; and/or from annoyance at the paperwork. Neither is a problem
> here.
>

Actually the backlash is not from companies actually putting open-source code
into proprietary licenses. Canonical, for example, still had its open-source
projects be open-source after they added copyright assignment. The blowback,
instead, was from the fear that now Canonical now had the power to take their
previously open-source code, and "steal" it from the open-source community, and
take it closed source. A very real possibility for a company. You're just one
guy, but if some company hires you, they could buy the Marpa copyright from
you and thanks to copyright assignment have all of your contributors'
copyrights too. The company could then change marpa's license from MIT to
proprietary. This is a very real possibility. If someone owns all of the
copyright to something then, they can "unopen-source" it, and Marpa could wind
up being only proprietary software without any open source code. I even think
this would result in past Marpa releases being "unopen-sourced". The company
could remove them from CPAN and Github, and file a DMCA takedown to BackPAN to
have Marpa vanish from CPAN and open-source forever. With a copyright assignment
policy this is a very real possibility, and is why some people fear and hate
copyright assignment. It can result in the "un-open-sourcing" of previously
open-source projects. You seem like a nice guy, and I don't see you doing this,
but its still possible, and the possibility is enough to anger people despite
it being unlikely.

> 3.) Above I mentioned the upside of copyright assignment for liberal
> licensing. Its downside is limited. Liberal licenses already allow
> anybody to exercise most of the rights the copyright holder has. As
> copyright holder, I could turn around and put the current codebase inside a
> proprietary wrapper, but so could anybody else under the MIT license.
>

The huge part your missing, and the huge fear that open-source developers have
from copyright assignment is if all copyright is assigned to only open person
or company, only that single person or company is needed to change the license.
So, if Libmarpa has copyright assignment, then you can change the license to
MIT, but you also have the power to change the license to a proprietary license
effectively ending marpa having an open source license and being open-source
software. The "un-open-sourcing" I mentioned above. This is different than a
company taking MIT licensed Marpa and adding some features and giving it a
proprietary license, because if a company did this, the open-source license
version of marpa would still exist. However, copyright assignment would give
you or whoever you might one day sell marpa to the power to change the
license on the one and only "open-source" version of marpa to a proprietary
license thereby "un-open-sourcing" it.

> 4.) Will having no paperwork undermine enforceability? Maybe. But if it
> does, we've lost nothing. And with liberal licensing, enforcement is less
> likely to be challenged -- the GPL folks have to sweat these things,
> because folks have an incentive to try to break their license. With the
> MIT license, there's not much to break.
>

No paperwork does not undermine enforceability it means that no copyright
assignment has taken place. Copyright is property you need to sign something to
change ownership of property. You can license property just by contributing to
an open source project, but you can't do copyright assignment. That's what my
last email was trying to say. If all you do is put up a paragraph in your
README file all you get is angering some people because you use copyright
assignment, and with no paperwork no copyright assignment actually happens. You
get the bad part, angry potential users and developers, without the good part,
any copyright assignment actually taking place.

> The copyright assignment and the change to liberal licensing really go
> together. And the MIT license is getting a favorable reception. Perhaps
> the line about copyright assignment in the README will turn some folks off,
> which is unfortunate, but I hope they'll understand.
>

Actually they do not. Libmarpa, for example, can have its license changed since
the code is almost certainly all yours. Github says it has 5 contributors, but
that probably also includes documentation fixes and other non-code stuff. And
tomorrow you could just change the README and LICENSE and maybe copyright lines
in code files, and be done with it. Then marpa would be MIT. Notice how
absolutely no copyright assignment policy was needed. If you can change the
license without copyright assignment, why do they go together? You can change
the license to MIT, because you own all of the code that actually matters,
where is the need for copyright assignment?

> Note, by the way, that if I start asking for copyright assignment, and it
> turns out to be a dumb idea, I can always reverse course. I if don't, that
> has already proved to be a bad idea, and one whose effects will continue to
> worsen.
>

I don't think you can change it if it proves a bad idea, because Marpa is such
a small project it is unlikely to ever prove to be a bad idea as few people
are likely to post to this list or email you directly about their
disagreement over Marpa's copyright assignment policy. Instead, they'll
just ignore Marpa, and look for some other parsing library that meets their
needs. Marpa is not Ubuntu. Ubuntu is absolutly massive. People blog and tweet
about each and every change Canonical makes. Whereas Marpa is tiny. It has few
people angered by copyright assignment, because it's such a small project. You
will probably never get any emails complaining about copyright assignment
directly to you or this list just like you never received any emails to this
list or directly regarding people angered that they can't check out Marpa,
because its LGPL. All you're likely to find is another reddit post this time
complaining about copyright assignment.

Thanks,
Dave.

Deyan Ginev

unread,
Jan 24, 2015, 5:29:57 AM1/24/15
to marpa-...@googlegroups.com
I am quite late to this discussion, but the sheer volume of it got me interested in reading and responding.

I am honestly quite surprised to see claims that licensing has been an issue for Marpa, or conversely that changing to a *more* permissive license would be an issue. The argument largely seems that there are large numbers of people that feel too restricted by copyleft, and inversely - that demand copyleft. My humble experience with FLOSS projects has been that the vast majority of contributors don't pay that much attention to copyleft in the first place. Having a "free" license satisfies most, be it some GPL, MIT, Apache, or the Perl artistic license.

So my advice is to just choose whatever makes you feel most comfortable.

Ron Savage

unread,
Jan 24, 2015, 4:34:51 PM1/24/15
to marpa-...@googlegroups.com
Dave - Thanx for spelling out your ideas. I don't know where this discussion will end up, but it's good to see the topic being debated.

David Yingling

unread,
Jan 24, 2015, 9:18:48 PM1/24/15
to marpa-...@googlegroups.com
On Sat, 24 Jan 2015 05:29:55 -0500
Deyan Ginev <deyan...@gmail.com> wrote:

> I am quite late to this discussion, but the sheer volume of it got me
> interested in reading and responding.
>
> I am honestly quite surprised to see claims that licensing has been an
> issue for Marpa, or conversely that changing to a *more* permissive license
> would be an issue. The argument largely seems that there are large numbers
> of people that feel too restricted by copyleft, and inversely - that demand
> copyleft. My humble experience with FLOSS projects has been that the vast
> majority of contributors don't pay that much attention to copyleft in the
> first place. Having a "free" license satisfies most, be it some GPL, MIT,
> Apache, or the Perl artistic license.
>
> So my advice is to just choose whatever makes you feel most comfortable.
>

Yeah, I agree. GPL, MIT, Apache, something the project made itself, but is
still pretty much open-source. It doesn't matter. I think libraries are often
better off being BSD or MIT, but LGPL is almost as good, but GPL is a four
letter word in some cases.

My only complaint is the use of CLAs and especially copyright assignment. I just
feel like copyright assignment steals my code, and gives it to someone else, who
winds up having all of the power. They both are a real drain on any sort of
community you might want to build up, because you have to deal with paperwork
before your contribution gets accepted into the project, and many people just
avoid contributing instead of doing the paperwork. Gigantically successful
projects like Ubuntu could probably get away with a CLA, or 100% company
developed but still open-source projects can get away with it like Google's V8.
Reply all
Reply to author
Forward
0 new messages