coding style
to do

The Uni-d license

Deciding a license for open source software is always difficult. Legal mumbo jumbo is not the strong point for most programmers. Therefore, let me explain the spirit of the licence before moving on to the legal stuff.

As Uni-d is open source, the choice was for a copyleft license (see This means that the code is open source, and it cannot be closed. That is, all modifications to this software need to be published (and need to be open source again).

The best known copyleft license is probably GPL, but that is known to be infectious, as it strictly disallows using Uni-d as part of something which is not entirely GPL. Uni-d is mostly developed by CAB for use in their commercial software, so that was a strict no-no.

Not wanting to write yet another open source license, MPL seems like the best choice.

Of course, as Uni-d is open source, we also want to encourage the use of Uni-d in other open source projects. A lot of open source software is licensed as GPL or LGPL, but the free software foundation says MPL is not compatible with these licenses (see

The people at Mozilla were also aware of this problem, and solved this by triple licensing (for background see In short, the code is licensed using MPL, but the user may choose to replace the license by either GPL or LGPL.

The full applicable license texts :

All code which is added in IC-trace needs to be triple licensed like this, or have another license which is compatible (more liberal) with this triple license.

_Addendum_ : Uni-d contains quite a few templates which generate code. While these templates fall under the triple license, the generated code does not and can be modified and used at well (so also in commercial products, without the need to publish the changes).

$Id: 683 2004-08-27 03:14:54Z triathlon98 $