Version 32 of license

Updated 2008-09-09 10:25:04 by SL

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]

According to the Fedora Project wiki licences list, the Tcl/Tk license is compatible [L1 ] with GPPL v2 and v3. It is not OSI [L2 ] approved, but the very similar new BSD license is.

As BSD type licences allow binary only redistribution (one key difference compared to the GPL), incorporation into closed-source software is allowed.

Another key difference to the GPL is that derived works need not be released under the original license: You can start with a piece of code from the Tcl/Tk/tcllib/… sources that does something similar to what you want, modify it to do exactly what you want, use that in a larger project, and still be free to choose the license under which you release this larger project.


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, [L3 ] 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.

See also Open Source.


Minimal licenses

  • LOL Limited Obligation Licence
  • NOL No Obligation Licence
  • OLL One Line Licence

Lars H: Could anyone natively English-speaking comment on the two spellings "licence" and "license"? Looking in a printed dictionary (these tend to be more reliable than the net in such matters) I find "licence" listed primarily as a noun, whereas "license" is only listed as a verb. Yet I see both used as nouns all over!

WordNet (r) 2.0 licence

noun 1: excessive freedom; lack of due restraint; "when liberty becomes license dictatorship is near"- Will Durant; "the intolerable license with which the newspapers break...the rules of decorum"- Edmund Burke [syn: license]

2: freedom to deviate deliberately from normally applicable rules or practices (especially in behavior or speech) [syn: license]

3: a legal document giving official permission to do something [syn: license, permit]

verb 1: authorize officially; "I am licensed to practice law in this state" [syn: license, certify] [ant: decertify]


LV Well, I speak American English, and people I know here are frequently poor spellers, and likely to spell the word which ever way seems to come out of their fingers at the moment.

I don't recall during any schooling any discussion or argument regarding the use of one spelling versus the other.

Perhaps our British readers might chime in here from their perspective.

MG - According to my OED, in en_uk licence is a noun and license can be a verb or a noun. It also says that in en_us, license can be either a verb or a noun, and licence is just a verb. I tend to just use 'license' for everything, myself...

RS ponders that for the noun, both forms derive from Latin licentia...

MJL - In (British) English, licence is the noun and license is the verb. The suffixes are the same in the pair practice/practise. My understanding is that in American English there is only one spelling - license (also practice) - for both noun and verb.


A Licensing HOWTO written by Eric Steven Raymond of the Open Source Initiative can be found at [L4 ]. It discusses the legal issues of licensing at quite some length.


Stu 2007-10-23 This page and the licenses page are quite similar.

I have recently switched my license preference from BSD to ISC (Internet Systems Consortium).

The ISC license is (in my words) a modern BSD license. It's also smaller.

In their words: It is functionally equivalent to the 2-clause BSD licence, with language "made unnecessary by the Berne convention" removed.

More info can be found here: [L5 ].

The license template:

 Copyright (c) 4-digit year, Company or Person's Name <E-mail address>

 Permission to use, copy, modify, and/or distribute this software for any
 purpose with or without fee is hereby granted, provided that the above
 copyright notice and this permission notice appear in all copies.

 THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
 ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
 ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.