Under what license(s) are Tcl and such accessories as [Tk], [Expect], [tcllib], ... available? Is it possible/practical/easy/... to use Tcl in commercial products? Is the Tcl license compatible with GPL? The answers are ... [[very liberal, and so forth]] ---- Each author is free to use whatever license s/he wishes. The TCT encourages people to use a BSD-related license similar to the one used in Tcl/Tk/tcllib/tklib/etc. as some companies find it less restrictive than [GPL] or [LGPL]. ---- The license for the standard Tcl distribution is http://purl.org/tcl/home/software/tcltk/license_terms.html . [Kbk] writes in comp.lang.tcl the following summary of the Tcl license: In even simpler language: Paragraph 1. It's ours. Paragraph 2. You can use it, modify it, give it away, or sell it. But only if you tell people about these terms. Paragraph 3. Don't sue us if it doesn't work. Paragraph 4. We don't have to fix it, either. Paragraph 5. Even if the Government uses it, we can use it ourselves, give it away, or sell it. ---- [[lots more details]] It is recommended that before you begin working with an extension or application you take a look over the license included. If a license is not available, you may want to attempt to get some sort of license in writing so as to ensure that you don't encounter any surprises in the future. ---- If you are a software author, you should think carefully about what kind of end user license agreement (or EULA in legal parlance) you use. However, as [David Welton] mentioned recently in comp.lang.tcl, http://www.dina.kvl.dk/~abraham/rants/license.html makes a strong argument against developers trying to invent their own licenses. ---- If you are not religiously convinced that one license is perfect for everything, you might consider what category your work falls under and how you want people to use it: * '''Application''' - a useful, complete application that does something for an end user. Both GPL and BSD style licenses work here, depending on whether you are worried about someone else adding some proprietary changes to your code and releasing it publically. * '''Library''' - some code that by itself is not useful, but can be combined with other libraries and code to create an application. The BSD or at least LGPL would be much appreciated by your fellow developers so they can use the code, even in proprietary projects, without worries. ---- '''Minimal licences''' * [NOL] No Obligation Licence * [OLL] One Line Licence ---- [Category Deployment] | [Category Licence]