Version 49 of Tcl

Updated 2012-11-29 21:07:00 by pooryorick

Attributes

What
Tcl
Where
[L1 ]
Where
[L2 ]
Description
An embeddable dynamic language interpreter. The sample "tclsh" is frequently used as a shell interpreter. Currently at version 8.5.12 formally released with 8.6b3 being the latest beta release.
Updated
10/2008
Contact
See web site

See Also

Documentation

official documentation
What is Tcl
this wiki
Tcl Commands
Learning Tcl

Description

Tcl, the subject of this wiki, stands for Tool Command Language. Its pronunciation has traditionally been a homophone for "tickle", although some people prefer to prounounce the individual letters. The suggested spelling is with an uppercase "T" and "cl".

This wiki is yet another (and we Wikians strive to make it the richest!)

http://purl.org/net/tcl-faq/ is a series of pointers to other documents.

http://tcl.sf.net/ hosts Tcl releases, and various extensions, .e.g, thread. The CVS also shows the sample TEA extension code residing in this project - unfortunately, it does not yet appear that this code has been released as a package. It is, thank goodness, available from the CVS as well as from the CVS snapshot repository at ftp://www.tcl.tk/pub/tcl/nightly-cvs/ .

Besides being the home for Tcl, the tcl SF.net project is also the home for other modules, such as tcltutorial, thread, sample extension, as well as the FAQs, pieces of code which are being integrated into future versions of Tcl and other miscellaneous things.

Read to build and test Tcl for more information on creating an executable library and stand alone scripting framework from the Tcl source code distribution.

Binary Distributions and places to find Tcl binaries and sources are two pages to discuss locating Tcl binaries.

http://www.tcl.tk/software/tcltk/platforms.html details the platforms known to support Tcl and Tk.

http://de.wikipedia.org/wiki/Tcl is a German wiki with useful articles on Tcl. http://en.wikipedia.org/wiki/Tcl is the English version.

Could use some care and updating...


How do you know you are using Tcl? That's a good question - in some cases, Tcl is inside a product and you may or may not even have access to the scripting engine itself.

However, if you are wanting to write and execute a tcl script, you have a number of options.

  • Out of the box, tclsh is a stand alone interpreter build from the tcl source code distribution
  • wish is a tcl interpreter with the Tk extension pre-loaded. It is created when building Tk.
  • tclkit is a all-in-one-file combination of Tcl, Tk, Metakit, Itcl, tclvfs and a few other extensions. It is used for code in starkit format.
  • expect is a tcl interpreter with the expect extension pre-loaded. It is created when building expect.
  • A command called tcl (as well as wishx) used to be built and installed as a part of building and installing the Tclx extension.
  • itclsh is a tclsh pre-extended with Itcl.
  • tixwish is built and installed as a part of the Tix build process
  • bltsh and bltwish are built and installed as a part of the BLT build process.
  • tcldomsh is built and installed as a part of the TclDOM build process
  • xotclsh and xowish are built and installed as a part of the XOTcl build process.

As of Tcl 8.4, the only interpreters that you really need to think about are tclsh, tclkit, and (on some platforms) wish, as Tcl provides the ability to dynamically load any of the other extensions during runtime. In fact, many of the extensions have been dropping the building and installing of custom executables due to this.

Tcl Commands documents all the Tcl commands available in the core distribution.

Tcl C API documents all the public Tcl C calls that a C programmer should consider safe to use.

Tcl also comes with several packages. For instance, the http package, dde, msgcat, platform, registry, tcltest, the deprecated optparse package, as well as others [please fill them in here].


64-bit computing


The arts and crafts link, below, will lead you to tutorials and other useful information about Tcl as a programming language.


LV There is a directory entry for Tcl and Tk at http://directory.fsf.org/project/tclTk/ - the FSF directory of free software. However, the entry is 3 years old, refers to 8.5 alpha, makes references to the source being maintained on sourceforge, etc. Someone with time to spend advocating Tcl in the public eye might consider tracking down the process of updating that page, updating this note to add that discovery, and then submit an update bringing the information up to date.

Just a thought.