When Don first created [Expect], he assumed other languages would incorporate bindings relatively quickly. It's a testimony to the package's polish that no substantial efforts were made with other language bindings for many years; it's because his Expect has seemed so perfect, not for any lack of need other languages have. By 2000, though, unripe Expect-like facilities were available for such languages as [Perl] and [Python]. In contrast to the situation for [Tk], other languages have '''not''' created Expect modules by linking against Don's libraries; instead, they've written "from scratch" in more language-specific fashion. Python has several Expect initiatives (just as it has a plethora of Web servers, GUI toolkits, and so on). Most advanced appears to be Pexpect [http://sourceforge.net/projects/pexpect/] (but is it ''narrow-sense'' "pure-Python"?). Expect.pm [http://cpan.org/modules/by-module/Expect/] ---- How does the programming power of Tcl/Expect compare to that of the Expect modules of other languages? This comparison is far more difficult to explain than might first appear; full understanding involves several subtleties. Here are the highlights: * Tcl/Expect can do anything the others can do. * Tcl/Expect is more mature, and, in particular, better-behaved across a range of Unixes. * Tcl/Expect has exceptionally interesting and powerful channel-processing capabilities, and event-oriented ones in particular, that other Expects don't try attempt. ''However'', only a small minority of Expect programmers ever use these. [[More detail.]] [[See essay on "[Most programmers don't know what Expect can do for them]".]] ---- [Category Expect]