6 ms·
I think what's hiding behind the baroque syntax and "everything is a string" approach is the fact that for a long time tcl sat on the sweet spot between the lim
by cnvogel 13y ago
I think what's hiding behind the baroque syntax and "everything is a string" approach is the fact that for a long time tcl sat on the sweet spot between the limited low-level functionality of a unix-shell and the missing high-level functions of traditional scripting languages (especially in the mid-90s when I started learning about tcl).
There was the insanely useful event-loop built into tk (obviously, for GUI applications), but also in tclsh (see, for example, http://www.tcl.tk/about/netserver.html http://www.tcl.tk/about/netserver.html where [socket -server on_connect_callback_fct portnum] creates a listening tcp socket).
This made it (for me, in 1997...) an ideal glue-language for network management tasks (monitor events on a router, graph temperature on a UPS, see http://wiki.tcl.tk/691 http://wiki.tcl.tk/691 ) but also for simple laboratory automation (GUI in tk for controlling a power supply), most often running simple line-oriented ASCII protcols between GUI and daemon.
Even later, I did research in a Physics collaboration that did automate their whole measurement apparatus on the HERA accellerator in Hamburg using a really scary and intricate mixture of tcl/tk, blt for data visualization and a obscure particle-physics database (ADAMO) made network aware: http://www-hermes.desy.de/pink/ http://www-hermes.desy.de/pink/ ...