Tool Command Language was invented by John Ousterhout as a way to make it easy to write little languages for configuring EDA tools, but it has grown far beyond those humble beginnings to become a general scripting language with built-in asynchronous I/O and Unicode strings while supporting paradigms such as object-oriented programming and coroutines.
Tool Command Language was invented by John Ousterhout as a way to make it easy to write little languages for configuring EDA tools, but it has grown far beyond those humble beginnings to become a general scripting language with built-in asynchronous I/O and Unicode strings while supporting paradigms such as object-oriented programming and coroutines. See the Wikipedia page for Tcl for more information.
The current recommended production release of Tcl is Tcl/Tk 8.6.13 (Nov 22, 2022).
Previous versions of the language are currently relatively common. Tcl 8.5 is widely deployed (current patch version 8.5.18). As is Tcl 8.4 in more conservative deployments (8.4.20 is current, but end-of-lifed there). Use of Tcl 8.4 or earlier is usually not recommended, as it does not receive security-fix support from the Tcl developers.
Naming
You may write the language name as either TCL or Tcl; practitioners tend to prefer the latter on the grounds that it means they don't have to hold the shift key down so long. For pronunciation purposes, either “tee cee ell” or “tickle” are acceptable, depending on audience.
Resources
Questions:
- Lots of useful information about tcltest in How to integrate tcltest test suite in git pre-commit hook
Books:
Websites:
- Tcl Developer Xchange
- Tcl Documentation including manual pages for Tcl 8.4, 8.5 and 8.6.
- Tcl SourceForge Pages, for additional information and development.
- The Tcler's Wiki, written in Tcl, all about Tcl and its community.
- The Tcl Newsgroup (
comp.lang.tcl
) is still frequented by a large number of experienced Tcl users. Specialist questions that can't get an answer here after a day or two can often be answered there. - Tcl development is hosted at http://core.tcl.tk/ in fossil, along with a considerable number of extensions.
- The Tcl category page at rosettacode.org has a very thorough discription of the language, including a simplified grammar.
- Practice your Tcl at Exercism