O'Reilly logo

Oracle and Open Source by Sean Hull, Andy Duncan

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Tcl/Tk

We’ll start our journey through the major scripting languages with Tcl (Tool Command Language, pronounced “tickle”) and its companion graphics toolkit, Tk (prounounced “tee-kay”). Tcl/Tk grew from a sense of frustration. Back in 1987, Dr. John Ousterhout and his students at the University of California Berkeley were spending way too much time writing specific and widely differing command tools for their projects, rather than focusing their time directly on the goals of these projects. Ousterhout realized that a lot of this precious time could be saved if a robust, general-purpose, extensible scripted language could be implemented as a C library. That library could then be reused for all of the team’s subsequent projects. Tcl was thus conceived; Ousterhout mostly wrote the new language in his spare time, and the first version was born in the spring of 1988. By 1989 Tcl was being released to early adopters, and after a USENIX conference in January 1990, the source code was placed on Berkeley’s public FTP site and Tcl was quickly adopted by many engineers, software architects, and academics.

Tk: The GUI Toolkit for Tcl

When Apple released their superb GUI HyperCard system with great fanfare in 1987, Ousterhout realized that such a massive and monolithic development effort could not be matched by his students. However, he didn’t want them locked out of the future of interactive software. Instead (in what was a forerunner to Eric Raymond’s “bazaar” methodology), Ousterhout decided ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required