Updated 2009-12-04 23:59:28 by WHD (Redirected from Exploring Expect)
Title: Exploring Expect
Subtitle: A Tcl-Based Toolkit for Automating Interactive Applications
Authors: Don Libes mailto:[email protected]
Publisher: O'Reilly
Publication date: December 1994
ISBN: 978-1-56592-090-3
Pages: 608
Price: 35 US
WWW book information: http://www.ora.com/catalog/expect/
Examples: The bigger ones all come with the Expect distribution
Errata: http://expect.nist.gov/errata

For all of you who thought that the Expect man page was too long and too terse at the same time, this book provides relief. "Exploring Expect" is an introduction and comprehensive tutorial to Expect. Numerous examples are provided and explained, demonstrating how to save you time and money. Example topics include how to write patterns, handle signals, use Expect as a telnetable daemon, and use Expect with Tk and other Tcl extensions.

The book also includes an innovative introduction to Tcl - if you've had trouble using Tcl before, all of a sudden, it will make a lot more sense. And while Exploring Expect concentrates primarily on using Expect with Tcl, programmers attempting to automate interactive programs using C, Perl, Python, or any other language will find this book helpful because many of the concepts underlying Expect-like programming are common to all languages.

Exploring Expect was originally based on Tcl 7. But Don wrote very carefully and it is not surprising that this book is still accurate to Tcl - except in a couple places. In particular, Tk's bind syntax is different now, so some of the examples in the Expectk chapter aren't quite right anymore. (But all the examples come with the Expect distribution and they've all been kept up to date.)

Even if you're not interested in Expect, the book is a landmark because it talks about a single extension and its domain in its entirely, covering everything you'd want to know about Tcl programming including the pitfalls, without pulling any punches.

The home for Expect is http://expect.nist.gov/.

Comments on this book:

A good effort.

I agree that Exploring Expect is still a valuable tool. I do wish that O'Reilly would dump a nice wad o' bills in Don's lap to bring out a new edition. -PSE

Eh. I've evangelized Expect until I was blue in the face to all the programmers I've worked with, to no avail. I'd imagine sales of the title were not high enough to warrant a second edition. But you never know...

To the contrary, EE is still selling well and O'Reilly is quite happy to pay Don to do a 2nd edition but it's Don himself who has repeatedly turned down the offer.

CL notes that Don has explained that there doesn't need to be a second edition; he recognizes how ("amazingly") gracefully the original has aged. However, in July 2003, he remarked that, "If someone ever finishes off a Windows port of Expect [the "Expect for Windows" project], I'd be happy to do (or let someone else do) a 2nd edition with some Windows coverage ..." [1].

LV Now that a Windows port of Expect is available, I wonder whether the second edition is in progress?

"It left me with a feeling of 'definiteness'."--one reader, captivated by the numerous useful examples.

"If you are doing expect programming, the Exploring Expect book is really indispensable. It covers not just tcl/expect issues but more importantly all the strange things that *other* programs do and how to handle them. ...

I cannot recommend strong enough to get the book (Exploring Expect) I know you're looking for free, but since the book is effectively worth $1000'S in the information contained, the actual price paid is effectively free." -- Bruce Hartweg

The book does not include a CD-ROM. Instead, the applications discussed in the book come with the source code distribution - available from the URL [2] mentioned above.

O'Reilly even provides a valuable SampleChapter from the book http://www.oreilly.com/catalog/expect/chapter/ch03.html

More comments or partial reviews of the book appear in developerWorks [3], UnixReview.com [4], Sys Admin Magazine [5], ...

LV Has anyone made an effort to collect solutions to the exercises of this book and make them available online?