If Tcl tickles your fancy, go for it - it is widely used for GUIs and integration
What is it?
Tool Command Language/Tool Kit (Tcl/Tk ) is a scripting language for coding embedded applications. Tcl (pronounced "tickle") comes from a Unix background, and has the best integration with C of any scripting language. Version 8.1 was specifically designed for large, mission-critical server applications.
Tcl is supplied and supported by IBM, Sun, Hewlett-Packard, and the major Linux distributors. It is available for free download in source form from www.tcl.tk.
Where did it originate?
In 1987 John Ousterhout began to build an "embeddable command language" which would be extensible, simple and generic; good at integrating software components, and reusable in many different applications. He later created a set of graphical user interface components as a Tcl extension. This became Tk, which has also been paired with Perl and Python.
Ousterhout joined Sun in 1994 and assembled a team of Tcl developers. Sun chief technical officer Eric Schmidt said, "Tcl/Tk provides the perfect complement to Java for scripting and system integration."
Sun agreed that the core Tcl and Tk libraries would continue to be distributed freely in source form. Tcl and Tk were ported to Windows and the Macintosh.
Ousterhout spun his own Tcl company off from Sun, and tools and services for Tcl are now provided by Active State, a division of anti-virus company Sophos. However, the vigour behind the language comes from the open source community.
What is it for?
Writing applications that can be extended by users and modified quickly. Tcl is particularly used to create GUIs, and management and integration tools for mixed environments including Windows, Unix and Linux.
What makes it special?
Speed of development. Tcl developers claim that applications involving GUIs, string-handling or integration can be built between five and 10 times faster than using C or C++.
"Tcl attracted much of its early following because it was the only sane way to create user interfaces under Unix," according to the Tcl Developer Exchange. Now it does the same for Windows and other platforms.
How difficult is it to master?
Experienced programmers can learn Tcl and produce their first application in just a few hours, and it is also suitable for casual programmers. Ousterhout said, "The simplest introduction is to take an existing program that was not written to have a GUI, wrap it up in Tcl, and put a GUI on it."
You can download the productivity toolkit Tclpro in its open source form free at www.tcl.tk. It is also sold as Tcl Devkit by Active State.
Where is it used?
In networking, mobile telecoms, software testing, Unix software houses, banking and healthcare. More people are using it than know about it.
What systems does it run on?
Tcl runs on Windows, Linux, most Unix platforms and Mac.
Rates of pay
Tcl developers with skills in Unix, SQL and C can expect a salary of between £25,000 and £40,000, depending on experience.
A good starting place for free tutorials is the Tcl Developer Exchange. Go to www.tcl.tk:80
There are other sources of Tcl training (try searching under Tcl Cookbook) but many date from the 1990s. For paid-for, classroom-based courses, try
This was first published in November 2004