Java Tutorial - Java Script :
GNU General Public License (GPL)
The GPL is the primary license of the Free Software Foundation and the GNU project. Many other projects have also adopted the GPL as their standard license. The primary features of the GPL are:
· The program can be copied and redistributed as long as copyright notices, disclaimers, and references to the license remain intact.
· Changes to the program are allowed as long as the changes are identified.
· The modified program must also be licensed under GPL and be freely distributed.
· Copyright notice, disclaimers, and references to the license need to be displayed by the program when practical.
· When distributing binaries, either the source code or an offer to provide source for copying costs only must be provided.
The GNU license clearly states that GPL programs can be included with other programs as parts of larger aggregate collections of programs as long as the GPL programs and the other programs are independent of each other. This allows the GNU programs to be included in Linux distributions that also
include non-GPL-compatible programs.
In general,if two programs are tightly coupled and share the same process space, and one of the programs is covered under the GPL, then they both must be covered under the GPL. However, if the two programs are loosely coupled and communicate using pipes, sockets, or other means of interprocess communications,they do not both have to be under the GPL. Interpreted programs and scripts that require an interpreter that is covered by the GPL do not themselves have to be covered under GPL.
Another point made clear in the FAQ documents is that the copyright holder is free to release a software product under several licenses. This allows a company, organization, or individual to release a free and open source version of a product under GPL but also release the same product under a different license to those willing to pay not to be under the GPL restrictions. The MySQL database is an example of software that uses this multiple license model.
