Copyleft

Copyleft is a play on the word copyright to describe the practice of using copyright law to offer the right to distribute copies and modified versions of a work and requiring that the same rights be preserved in modified versions of the work. In other words, copyleft is a general method for making a program (or other work) free (libre), and requiring all modified and extended versions of the program to be free as well.

Copyleft is a form of licensing and can be used to maintain copyright conditions for works such as computer software, documents and art. In general, copyright law is used by an author to prohibit others from reproducing, adapting, or distributing copies of the author's work. In contrast, an author may give every person who receives a copy of a work permission to reproduce, adapt or distribute it and require that any resulting copies or adaptations are also bound by the same licensing agreement.

Copyleft licenses require that information necessary for reproducing and modifying the work must be made available to recipients of the executable. The source code files will usually contain a copy of the license terms and acknowledge the author(s).

Copyleft type licenses are a novel use of existing copyright law to ensure a work remains freely available. The GNU General Public License, originally written by Richard Stallman, was the first copyleft license to see extensive use, and continues to dominate the licensing of copylefted software. Creative Commons, a non-profit organization founded by Lawrence Lessig, provides a similar license called ShareAlike.

Reciprocity
Copyleft can be characterized as a copyright licensing scheme in which an author surrenders some but not all rights under copyright law. Instead of allowing a work to fall completely into the public domain (where no ownership of copyright is claimed), copyleft allows an author to impose some restrictions on those who want to engage in activities that would more usually be reserved by the copyright holder. Under copyleft, derived works may be produced provided they are released under the compatible copyleft scheme.

The underlying principle is that one benefits freely from the work of others but any modifications one makes must be released under compatible terms. For this reason some copyleft licenses are also known as reciprocal licenses, they have also been described as "viral" due to their self-perpetuating terms. Under fair use, however, the copyleft license may be superseded, just like regular copyrights. Therefore, any person utilizing a copyleft-licensed source for their own work is free to choose any other license provided they meet the fair use standard.

While copyright law gives software authors control over copying, distribution and modification of their works, the goal of copyleft is to give all users of the software the freedom to carry out these activities. In this way, copyleft licenses are distinct from other types of free software licenses, which do not guarantee that all "downstream" recipients of the program receive these rights, or the source code needed to make them effective. In particular, permissive free software licenses such as BSD allow re-distributors to remove some or all these rights, and do not require the distribution of source code.

History
An early example of copyleft was the Tiny BASIC project started in the newsletter of the People's Computer Company in 1975. Dennis Allison wrote a specification for a simple version of the BASIC programming language. This design did not support text strings and only used integer arithmetic. The goal was for the program to fit in 2 to 3 kilobytes of memory.

The Tiny BASIC contents of the newsletter soon became Dr. Dobb's Journal of Tiny BASIC with a subtitle of "Calisthenics & Orthodontia, Running Light Without Overbyte." Hobbyists began writing BASIC language interpreters for their microprocessor-based home computers and sending the source code to Dr. Dobb's Journal and other magazines to be published. By the middle of 1976, Tiny BASIC interpreters were available for the Intel 8080, the Motorola 6800 and MOS Technology 6502 processors. This was a free software project before the internet allowed easy transfer of files. Computer hobbyists would exchange paper tapes, cassettes or even retype the files from the printed listings.

Jim Warren, editor of Dr. Dobb's Journal, wrote in the July 1976 ACM Programming Language newsletter about the motivations and methods of this successful project. He started with this: "There is a viable alternative to the problems raised by Bill Gates in his irate letter to computer hobbyists concerning 'ripping off' software. When software is free, or so inexpensive that it's easier to pay for it than to duplicate it, then it won't be 'stolen'." The method was to have an experienced professional do the overall design and then outline an implementation strategy. Knowledgeable amateurs would implement the design for a variety of computer systems. Warren predicted this strategy would be continued and expanded.

The May 1976 issue of Dr. Dobbs Journal had Li-Chen Wang's Palo Alto Tiny BASIC for the Intel 8080 microprocessor. The listing began with the usual title, author's name and date but it also had "@COPYLEFT ALL WRONGS RESERVED". A fellow Homebrew Computer Club member, Roger Rauskolb, modified and improved Li-Chen Wang's program and this was published in the December 1976 issue of Interface Age magazine. Roger added his name and preserved the COPYLEFT Notice.

A later instance of copyleft arose when Richard Stallman was working on a Lisp interpreter. Symbolics asked to use the Lisp interpreter, and Stallman agreed to supply them with a public domain version of his work. Symbolics extended and improved the Lisp interpreter, but when Stallman wanted access to the improvements that Symbolics had made to his interpreter, Symbolics refused. Stallman then, in 1984, proceeded to work towards eradicating this emerging behavior and culture of proprietary software, which he named software hoarding.

As Stallman deemed it impractical in the short term to eliminate current copyright law and the wrongs he perceived it perpetuated, he decided to work within the framework of existing law; In 1988, he created his own copyright license, the Emacs General Public License, the first copyleft license. This later evolved into the GNU General Public License, which is now one of the most popular Free Software licenses. For the first time a copyright holder had taken steps to ensure that the maximal number of rights be perpetually transferred to a program's users, no matter what subsequent revisions anyone made to the original program. This original GPL did not grant rights to the public at large, only those who had already received the program; but it was the best that could be done under existing law.

The new license was not at this time given the copyleft label. Richard Stallman stated that the use of "Copyleft" comes from Don Hopkins, who mailed him a letter in 1984 or 1985 on which was written: "Copyleft&mdash;all rights reversed." The term "kopyleft" with the notation "All Rites Reversed" was also in use in the early 1970s within the Principia Discordia, which may have inspired Hopkins or influenced other usage. And in the arts Ray Johnson had earlier coined the term independently as it pertained to his making of and distribution of his mixed media imagery in his mail art and ephemeral gifts, for which he encouraged the making of derivative works. (While the phrase itself appears briefly as (or on) one of his pieces in the 2002 documentary How to Draw a Bunny, Johnson himself is not referenced in the 2001 documentary Revolution OS.)

Some have suggested that copyleft became a divisive issue in the ideological strife between the Open Source Initiative and the free software movement. However, there is evidence that copyleft is both accepted and proposed by both parties:
 * Both the OSI and the FSF have copyleft and non-copyleft licenses in their respective lists of accepted licenses.
 * The OSI's original Legal Counsel Lawrence Rosen has written a copyleft license, the Open Software License.
 * The OSI's licensing how-to recognises the GPL as a "best practice" license.
 * Some of the software programs of Project GNU are published under non-copyleft licenses,
 * Stallman himself has endorsed the use of non-copyleft licenses in certain circumstances, most recently in the case of the Ogg Vorbis license change.

Applying copyleft
Common practice for using copyleft is to codify the copying terms for a work with a license. Any such license typically gives each person possessing a copy of the work the same freedoms as the author, including (from the Free Software Definition):


 * 0. the freedom to use the work,
 * 1. the freedom to study the work,
 * 2. the freedom to copy and share the work with others,
 * 3. the freedom to modify the work, and the freedom to distribute modified and therefore derivative works.

(Note that the list begins from 0 due to a coding tradition &mdash; the first array element in C and many other programing languages is numbered as 0.)

These freedoms do not ensure that a derivative work will be distributed under the same liberal terms. In order for the work to be truly copyleft, the license has to ensure that the author of a derived work can only distribute such works under the same or equivalent license.

In addition to restrictions on copying, copyleft licenses address other possible impediments. These include ensuring the rights cannot be later revoked and requiring the work and its derivatives to be provided in a form that facilitates modification. In software, this requires that the source code of the derived work is made available together with the software itself.

Copyleft licenses necessarily make creative use of relevant rules and laws. For example, when using copyright law, those who contribute to a work under copyleft usually must gain, defer or assign copyright holder status. By submitting the copyright of their contributions under a copyleft license, they deliberately give up some of the rights that normally follow from copyright, including the right to be the unique distributor of copies of the work.

Some laws used for copyleft licenses vary from one country to another, and may also be granted in terms that vary from country to country. For example, in some countries it is acceptable to sell a software product without warranty, in standard GNU GPL style (see articles 11 and 12 of the GNU GPL version 2), while in most European countries it is not permitted for a software distributor to waive all warranties regarding a sold product. For this reason the extent of such warranties are specified in most European copyleft licenses. Regarding that, see the European Union Public Licence EUPL, or the CeCILL license, a license that allows one to use GNU GPL (see article 5 of the EUPL and article 5.3.4 of CeCILL) in combination with a limited warranty (see article 7 and 8 of the EUPL and 9 of CeCILL).

Types of copyleft and relation to other licenses
Copyleft is a distinguishing feature of some free software licenses. Many free software licenses are not copyleft licenses because they do not require the licensee to distribute derivative works under the same license. There is an ongoing debate as to which class of license provides the greater degree of freedom. This debate hinges on complex issues such as the definition of freedom and whose freedoms are more important, or whether to maximize the freedom of all potential future recipients of a work (freedom from the creation of proprietary software). Non-copyleft free software licenses maximize the freedom of the initial recipient (freedom to create proprietary software).

In common with the Creative Commons share-alike licensing system, GNU's Free Documentation License allows authors to apply limitations to certain sections of their work, exempting some parts of their creation from the full copyleft mechanism. In the case of the GFDL, these limitations include the use of invariant sections, which may not be altered by future editors. The initial intention of the GFDL was as a device for supporting the documentation of copylefted software. However, the result is that it can be used for any kind of document.

Strong and weak copyleft
The strength of the copyleft governing a work is an expression of the extent that the copyleft provisions can be efficiently imposed on all kinds of derived works. "Weak copyleft" refers to licenses where not all derived works inherit the copyleft license; whether a derived work inherits or not often depends on the manner in which it was derived.

"Weak copyleft" licenses are generally used for the creation of software libraries, to allow other software to link to the library, and then be redistributed without the legal requirement for the work to be distributed under the library's copyleft license. Only changes to the weak copylefted software itself become subject to the copyleft provisions of such a license, not changes to the software that links to it. This allows programs of any license to be compiled and linked against copylefted libraries such as glibc (the GNU project's implementation of the C standard library), and then redistributed without any re-licensing required.

The most well known free software license that uses strong copyleft is the GNU General Public License. Free software licenses that use "weak" copyleft include the GNU Lesser General Public License and the Mozilla Public License. Examples of non-copyleft free software licenses include the X11 license, Apache license and the BSD licenses.

The Design Science License is a strong copyleft license that can apply to any work that is not software or documentation, such as art, music, sports photography, and video. It is hosted on the Free Software Foundation website's license list, but it is not considered compatible with the GPL by the Free Software Foundation.

Full and partial copyleft
"Full" and "partial" copyleft relate to another issue: Full copyleft exists when all parts of a work (except the license itself) may only be modified and distributed under the terms of the work's copyleft license. Partial copyleft exempts some parts of the work from the copyleft provisions, thus permitting distribution of some modifications under terms other than the copyleft license, or in some other way does not impose all the principles of copylefting on the work. For example, the GPL linking exception made for some software packages (see below).

Share-alike
Share-alike imposes the requirement that any freedom that is granted regarding the original work must be granted on exactly the same or compatible terms in any derived work: this implies that any copyleft license is automatically a share-alike license, but not the other way around, as some share-alike licenses include further restrictions, for instance prohibiting commercial use. Some permutations of the Creative Commons licenses are examples of share-alike.

Viral licensing
Copyleft licenses are sometimes referred to as "viral licenses" because any works derived from a copyleft work must themselves be copyleft when distributed (and thus they exhibit a viral phenomenon). The term 'General Public Virus', or 'GNU Public Virus' (GPV), has a long history on the Internet, dating back to shortly after the GPL was first conceived. Many BSD License advocates used the term derisively  in regards to the GPL's tendency to absorb BSD licensed code without allowing the original BSD work to benefit from it, while at the same time promoting itself as "freer" than other licenses. Microsoft vice-president Craig Mundie remarked "This viral aspect of the GPL poses a threat to the intellectual property of any organization making use of it." In another context, Steve Ballmer declared that code released under GPL is useless to the commercial sector (since it can only be used if the resulting surrounding code becomes GPL), describing it thus as "a cancer that attaches itself in an intellectual property sense to everything it touches". The term 'viral' may be read as an analogy of computer viruses. According to FSF compliance engineer David Turner, it creates a misunderstanding and a fear of using copylefted free software. David McGowan has written that there is no reason to believe the GPL could force proprietary software to become free software, but could "try to enjoin the firm from distributing commercially a program that combined with the GPL’d code to form a derivative work, and to recover damages for infringement." If the firm "actually copied code from a GPL’d program, such a suit would be a perfectly ordinary assertion of copyright, which most private firms would defend if the shoe were on the other foot."

Popular copyleft licenses, such as the GPL, have a clause allowing components to interact with non-copyleft components as long as the communication is abstract, such as executing a command-line tool with a set of switches or interacting with a Web server. As a consequence, even if one module of an otherwise non-copyleft product is placed under the GPL, it may still be legal for other components to communicate with it normally. This allowed communication may or may not include reusing libraries or routines via dynamic linking &mdash; some commentators say it does, the FSF asserts it does not and explicitly adds an exception allowing it in the license for the GNU Classpath re-implementation of the Java library.

One should also note that on one hand this 'viral' effect is a normal property of any conventional license on derived works of non-copyleft free material, and on the other hand it is the intended effect when using BSD-licensed works as part of proprietary software. The GNU project using BSD code is in this respect no different from Microsoft or Apple using BSD code, despite claims by proponents of the GPL that it is a freer license than the BSD License.

Symbol
The copyleft symbol is a backwards C in a circle (copyright symbol © mirrored). Because it is unavailable on Unicode, it can be approximated with character or the more widely available character  between parenthesis (ɔ) or, if supported by the application, by combining it with the character  ↄ⃝. It has no legal meaning.