Tesseract home

Why tcl/tk? or..isn't tcl what you do to somebody when you want to make them laugh??

I first noticed tcl (pronounced "tickle") and tk (pronounced "tee-kay") when I was asked to re-write a large image processing system based on the Noesis Visilog language system running on a Sun SparcStation; this system was the host system for an Imaging Technologies PipeLined Image Processor used to capture and process low-photon count images from a Secondary Ion Mass Spectrometer used in materials science studies.

When I was put in front of this system and asked to re-write it, I really knew very little even about what Unix was, nevermind all of the stuff I just noted above......

So I was very anxious to develop software quickly and easily since I had so much to learn before I even got started. The first thing that worried me was the GUI. I really did not want to spend months learning how to program under X or Motif or OpenLook. I knew tcl and tk were supposed to be cross platform tools for GUI and other code development, but a language that worked on simple string substitution sounded just as bad as the Noesis Visilog language.

Until I learned tcl and tk. In a week.

I have really not looked back. I have successfully developed GUIs and other apps in tcl/tk in hours or days that would have taken me weeks or months in C or C++. I can easily prototype a simple GUI for test and run the same code in Unix/X or Windows with no alterations.

You can develop high performance stuff in C, then make this code into a server that responds to client messages. You build the client in tcl/tk. Voila! One programmer with hard skills can build a software engine while one programmer with softer skills can work easily in tcl to build a very nice GUI.

I have also noticed that a lot of tcl programming is done by working scientists and engineers. That is, things like Perl are used by full time code jockeys, but working scientists and engineers want to get something done fast in their discipline, and often turn to tcl to get the job done.

Tcl/tk related links and resources


Back to Tesseract links