I've just noticed on the
Activestate site that "the ActiveTcl distribution now includes Expect for Windows. A license is no longer required ....". At face value, that looks like excellent news!
One of the big uses of Tcl and Tcl/Tk is in the automation of processes / programs that are designed to work from the command line and don't have an easy interface for other automata to use them. For example, if you run a regular ssh or telnet session every day, you can automate it with relative ease through Expect, where you choreograph the session in a series of "I say this" and "you say that" type statements.
Expect was written originally for Unix and works well on Linux and OS X. Up until a year or two back, only older and somewhat unsupported / unstable releases were available on Windows due, I understand, to the underlying operating system making it quite an issue to implement the multiprocess environment expect requires. Then Activestate brought out a commercial, license-only expect extenstion to ActiveTcl. This has always felt a bit - unfortunate - that a piece of software that started as Open Source became commercial-only in this guise and I'll be off to look at the licensing agreement when I get the odd spare moment to see if it's now - as I hope - free at the point of distribution and on a license under which that distribution can be used in perpituity. With a confirmation of the latter, you'll find me grinning from ear to ear!
Added, 10th September ... I AM grinning from ear to ear. I had a chance to download and test Expect for Windows and it ran nicely, without any problems. See full source code of my example
(written 2005-09-04, updated 2006-06-05)
Associated topics are indexed under
T211 - Tcl/Tk - What is Expect? Why use it? [3572] Adding Expect on top of Tcl - what is it and where can I get a training course to learn about it? - (2012-01-08)
[3286] Should we cover expect and/or Tk on our public Tcl courses? - (2011-05-11)
[3009] Expect in Perl - a short explanation and a practical example - (2010-10-22)
[2489] Parallel Pinging, using Python Threads or Expect spawn lists - (2009-11-02)
[2474] Using Tcl and Expect to automate repetitive jobs - (2009-10-24)
[1602] Automating processes through Expect - (2008-04-05)
[1531] Expecting a item from a list of possibles - (2008-02-04)
[1469] Curley brackets v double quotes - Tcl, Tk, Expect - (2007-12-12)
[1411] Buffering of inputs to expect, and match order - (2007-10-27)
[1409] What is Expect? - (2007-10-26)
[1174] Installing Tcl and Expect on Solaris 10 - a checklist - (2007-05-02)
[1173] Cheat Sheet / Check list for Expect maintainers - (2007-05-02)
[286] Automating regular manual procedures - (2005-04-21)
T242 - Tcl/Tk - More on Expect [3448] Checking all the systems on a subnet, using Expect and Tk - (2011-09-18)
[2475] Quick easy and dangerous - automated logins via Tcl / Expect - (2009-10-24)
[1475] Tcl/Tk - updating your display while tasks are running - (2007-12-16)
Some other Articles
You cantFair system for travel and accommodation expensesOutside of the boxLinking Apache httpd to Apache TomcatExpect for WindowsThrough public transport connection, Chippenham to Salisbury, to ceaseFTP - how to make the right transfersNew print centre for our manualsFile permissions of Linux and Unix systemsLinux commands - some basics