What is it?
Tcl/Tk (pronounced “tickle”; the full name is Tool Command Language/Tool Kit) is a scripting language used in applications such as automated testing.
Scripting languages offer an ideal way for programmers to extend their skillset. They can be learned quickly, with free material from the internet, and they have large, supportive communities sharing code and tips.
Tcl/Tk is less well known, but possibly more widely used than Python, Perl and PHP. It can be used to create cross-platform applications, is easily deployed and very extensible. Experienced programmers can pick it up and become productive very quickly.
Tk is the graphical user interface tool for Tcl, and is also used with other scripting languages.
What is it for?
Tcl/Tk is most commonly used for rapid prototyping, scripted applications, graphical user interfaces, testing and CGI scripting. The site Tcl.tk says its uses include massively scalable database-backed websites, the TclHttpd web server, web programming, desktop GUI applications for Unix, Windows and Mac OS X, and embedded development. Tcl has extensions to all standard databases.
Where did it originate?
John Ousterhout began working on Tcl at Berkeley in 1987. In 1994 he joined Sun, where Tcl/Tk was seen as a perfect complement to Java for scripting and system integration.
How difficult is it to master?
Tcl has a very simple syntax, which is applied in a consistent way, making it easy to apply once the basics have been picked up.
Where is it used?
Widely by software and networking equipment suppliers, and by end-user organisations including Shell, Pixar, various broadcasters, defence companies and the Hubble space telescope.
What makes it special?
Speed of development, with claims that Tcl can be five to 10 times faster than other languages, particularly for applications involving GUIs, string handling or integration. The Tk GUI toolkit is emerging as a de facto standard far beyond the Tcl user base.
What systems does it run on?
Windows, Macintosh, Linux and most flavours of Unix. The high-level application programme interfaces means code runs unchanged on all platforms, with Tcl/Tk taking care of platform differences.
What’s coming up?
ActiveState is releasing the beta of ActiveTcl 126.96.36.199, an industry-standard Tcl distribution on AIX, HP-UX, Linux, Mac OSX, Solaris and Windows. The standard ActiveTcl distribution can be downloaded free of charge.
Rates of pay
As Tcl is an add-on, pay is dependent on the other skills the language is used with. The average salary for Unix developers is £44,000, and the average for C developers is £40,000.
See the Tcl developer site for training. SourceForge has tutorials, FAQs, links and other resources.