Hi re2c users and contributors!

This is a proposal to change re2c license to one of the widely
recognized, OSI and FSF approved licenses (most likely MIT). To
clarify, re2c will remain free and open source software, and this
change should not affect the users.

What is the current license?
----------------------------

Historically re2c uses a custom "public domain" license, worded as
follows:

    Re2c is in the public domain. The data structures and algorithms
    used in re2c are all either taken from documents available to the
    general public or are inventions of the author. Programs generated
    by re2c may be distributed freely. Re2c itself may be distributed
    freely, in source or binary, unchanged or modified. Distributors
    may charge whatever fees they can obtain for re2c. If you do make
    use of re2c, or incorporate it into a larger project an
    acknowledgement somewhere (documentation, research report, etc.)
    would be appreciated. Re2c is distributed with no warranty
    whatsoever. The code is certain to contain errors. Neither the
    author nor any contributor takes responsibility for any
    consequences of its use.

Why change?
-----------

It is getting increasingly difficult to use current license as a proof
that re2c is free software. There is no SPDX. Github and journals like
Software Impacts do recognize it. Personally I see nothing wrong with
public domain, but at the same time I feel that not changing the
license to an FSF and OSI approved one is the equivalent of Asimov's
"...through inaction, allow a human being to come to harm".

Do I have the right?
--------------------

I don't know. This is not my own project --- many people have
contributed to re2c over the years, and some have spent considerable
time on the project. I am the only active author: none of the other
authors get in touch (sadly, not all of them are alive by now). I have
made by far the most contributions to the project in the number of
commits, and I am the only remaining developer with commit access to
the source code repositories. I am not worried that someone will sue me
(it seems extremely unlikely), but rather that it may alert or create
problems for some re2c users.

Change to what?
---------------

There are two aspects: 1) what the license says and 2) how it is
interpreted. Personally I prefer "public domain" licenses that don't
have any requirements, like Unlicense and 0-BSD. However, they are not
as widely accepted as MIT, and not always approved by various projects
and organizations. Since the only reason to change license is to make
re2c easier to use, it makes sense to choose a less appealing, but more
default option.

- MIT. Pros: it is the most widely recognized OSI and FSF approved
    license, its text is short and readable, it is technically very
    close to the current license (unlikely to cause license troubles
    for any re2c users). Cons: it adds one requirement not present in
    the current license (copy-pasting the license), it doesn't have the
    words "public domain" in it, and it requires the year and name.

- Unlicense. Pros: it is FSF approved, it is recognized as a "public
    domain" license, it does not require copy-pasting the license text,
    and I like the wording, the name and the project goals. Cons: I
    don't thinks it's OSI approved, and some companies like Google
    exclude it from the allowed list. I'm afraid it may create more
    technical problems for re2c uses than the seemingly more
    restrictive MIT license.

- Zero-Clause BSD / Free Public License 1.0.0 (0BSD). Pros: OSI
    approved, short, recognized as public domain, no requirement to
    copy license notice. Cons: not FSF approved, less widely used.

Other alternatives were also considered, but seem to be worse than the
above: ISC is like MIT but less widely used, CC0 seems more for data
than code (and the webcite says not to use it for public domain).

I'm leaning more towards MIT, although I personally like the Unlicense
better. Please let me know if you have any concers/advice.


--
Ulya


_______________________________________________
Re2c-general mailing list
Re2c-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/re2c-general

Reply via email to