Development: Licensing Philosophy

Licensing Philosophy

The Étoilé project and its developers are committed to the idea of Free Software. Component-based systems have been proposed (and developed) before, but they have died in the marketplace because they are incompatible with the off-the-shelf method of software development and distribution. We believe Free Software frees us from these limitations. In a Free Software economy, developers would be employed to develop individual components required for a specific purpose, reducing the cost for the end user.

In spite of this, we tend to avoid the GPL. In current versions, the GPL does not fit well with a component-based environment. It views linking as something that happens in a fairly static way. In a component-based environment, linking is something that happens very often. GPL'd components would not be able to be used in the same document as components under ASL, CDDL, or similar licenses. By including GPL'd components we would be making it easy for our users to end up accidentally committing copyright infringement.

The second reason for avoiding the GPL is that it does not work well in the context of systems which embed their own code in documents. Programs such as GCC avoid this by having specific exemptions for the embedded code, but it is not possible for us to add this exemption to code taken from elsewhere. This is a problem, since a document in an object-oriented environment is a collection of objects, and objects are a combination of code and data. This could lead to the documents becoming accidentally GPL'd.

Neither of these is not a problem in more traditional application-oriented environments. As such, we allow GPL'd components for the few areas where they do not need to directly interface with the rest of the system.

For new code, we favour less restrictive licenses. LGPL is acceptable, and the three-clause BSDL is ideal. MIT-licensed or public domain contributions are accepted, however they are rare.