The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Поиск:  Каталог документации | tcl

comp.lang.tcl Frequently Asked Questions (January 31, 2002) (1/6)

A regular posting of the comp.lang.tcl Frequently Asked Questions (FAQ) and their answers. This is the first of six parts. This part introduces Tcl and Tk and discusses documentation, etc.
Archive-name: tcl-faq/part1
Posting-Frequency: at least once a quarter
Last-modified: January 31, 2002
Version: 8.144
Comp-lang-tcl-archive-name: tcl-faq.part01

	For more information concerning Tcl (see "part2"),
(see "part3"), (see "part4"), (see "part5"), or (see "part6").
Also (see "bibliography/part1").

Index of questions:

I.   Origin of comp.lang.tcl, the FAQ information, and
	to whom do I contact for more information about the FAQ?
II.  What is Tcl?  Tk?  Extended Tcl?  What is Tcl _not_?
III. Do these packages run on my machine?
	A. Unix
	B. MacOS
	C. INTEL DOS-like systems
	E. AmigaDOS
	F. NeXT
	G. Other
IV.  Other than C, What languages can talk to tcl/tk?
	A. Shell
	B. C++
	C. Modula-3
	D. Eiffel
	E. Ada
	F. Perl
	G. Prolog
	H. Other
V.   What training material is available?
	A. Books
	B. Training courses, etc.
	C. Time-related seminars, conferences, workshops.
VI.  Where do I report problems, bugs, or enhancements about Tcl - or -
	what is comp.lang.tcl?

End of FAQ Index



From: FAQ General information
Subject: -I- Origin of comp.lang.tcl, the FAQ information, and
	to whom do I contact for more information about the FAQ?

	What is comp.lang.tcl?

	First, let me assure you what it is not.
<URL: news:comp.lang.tcl> (and <URL: news:comp.lang.tcl.announce> now)
are *NOT* bulletin boards.  They are not, innately, mailing lists.
Some users may experience the messages in those formats, but
these communities of users are what is known as USENET newsgroups.
While Dr. John Ousterhout <URL: >
was the creator of the original, unmoderated
<URL: news:comp.lang.tcl>, in the current incarnation, clt (as it is
often referenced) has no moderator, no owner, no authority to whom
one can appeal when one feels slighted, offended, libeled, etc.
On the other hand, there are a group of moderators associated with
<URL: news:comp.lang.tcl.announce>, whose job it is to ensure that
the postings there remain 'on charter'.

	What kinds of topics are appropriate for <URL: news:comp.lang.tcl>?
Good question.  The original charter stated:

	It will be an unmoderated forum for the discussion of the Tcl
	programming language and tools that include it, such as Expect and the
	Tk toolkit for X-Windows.

Thus, discussing Tcl, extensions and tools that use Tcl, products and
design ideas, all can be on topic.  The "Welcome to comp.lang.tcl" message
<URL:> lays out other useful

	The majority of readers of <URL: news:comp.lang.tcl> are
access the postings in English, and seem to prefer plain text postings
formatted to 78 or less characters per line, as opposed to HTML, Postscript,
MIME base64, Macintosh special character sets, etc..  They also prefer to
have postings which specify a working email address in the From or Reply-To
header (or at least in the body of the msg somewhere).  While
alternatives to that are certainly possible, you decrease the chance of
getting a timely relevant answer by choosing alternatives to these.
These rules are not unique to clt, but are the typical USENET netiquette
that posters are asked to respect.  As an alternative to this,
there are the French <URL: news:fr.comp.lang.tcl>, German
<URL: news:de.comp.lang.tcl>, and Japanese <URL: news:fj.lang.tcl>
equivalents of <URL: news:comp.lang.tcl>.

	Posting of source code is acceptable (and in fact encouraged if
you are having problems) if reasonably sized (a few hundred lines);
otherwise, <URL:> is an archive which
permits users to upload code they wish to share.  Posting of binaries
(or even HTML attachements) are in general is not looked upon kindly;
use of NeoSoft or one of the many free web sites, etc. is a much better
alternative.  Advertising for books, jobs, software, etc. are acceptable
if done with some forethought - frequent 'form letter' postings and
announcements are likely to meet with some community resistance.

	One question that comes up fairly often concerning
<URL: news:comp.lang.tcl> is 'why isn't it split?'.  The newsgroup
varies in traffic, but I have seen as many as 45 messages a day
(counting current cross postings, etc.) Currently, many have come
forward with ideas on how a split could be handled, but no concensus
has been reached.  Also, no moderators have stepped forward to take
over moderation of a split group.  During January, 1996,
<URL: news:comp.lang.tcl.announce>, a moderated group containing
announcements of new software, doc, etc. relating to Tcl, was created.
So as of right now, asking to split the newsgroup only adds to the
existing traffic, without resolving any problems.

	Other newsgroup in which you might encounter Tcl discussion are
<URL: news:alt.comp.tkdesk>, where discussions about the Tk application
TkDesk may take place, <URL: news:comp.unix.sco.programmer> - where
discussion about SCO's vtcl (a graphical interface extension based on the
Motif library) can be found, <URL:>, which covers
discussions about the Tk binding to Perl, and of course, discussions of
specific ports of Tcl/Tk/other Tcl-based extensions and programs will
frequently be found on the appropriate OS or hardware related newsgroups
You can also find discussions regarding Tcl in many of the support newsgroups
and mailing lists provided by vendors/authors who are using Tcl in their
products.  Two examples are the mailing lists for AOL's AOLserver and
Tcl/Tk based Instant Messages client TiK (see "part2"), while Vignette has
<URL: nntp://> and
<URL: nntp://>.

	The information in this set of FAQs comes from several sources.  The
primary source of information is the group itself - I spend (much too
much) time each month culling through what I feel are some of the best
answers, gathering up new information on ports, etc. and adding it
here.  I also gather new application information and add it as
best I can.  The next most predominant source of information comes from
the authors of the various software packages.  Finally, a small amount
comes from my personal experiences.  You can find my general
Tcl FAQs at either <URL:> or

	The commercial use of Tcl FAQ is no longer being maintained.
The last copy of it available for ftp can be found at

	Commercial vendors who write products using Tcl and who would like some
visibility in the community can contact the Tcl Core Team
<URL:> for ideas.

	The FAQ containing a series of Tcl-related questions
and answers is managed by <URL:> (Joe Moss).
See <URL:> or find it at

	The FAQ containing Tk-related questions and answers is managed by
<URL: mailto:jeff at> (Jeffrey Hobbs).  You can find it at

	A bibliography of published material related to Tcl will be
managed by <URL:> (Glenn Vanderburg).
(See "bibliography/part1") or ftp it at

	Cameron Laird <URL: > has made
available his personal notes on mistakes frequently made by newcomers
to Tcl at <URL:>
and will update it as time permits.  Cameron maintains one of the more
unusual FAQ pages as well - the Unanswered Frequently-Asked Questions
about Tcl page
He has many other useful collections of information on Tcl and Tk.
Look over the list by going to

	FAQs are also available for the Windows port of Tcl
Macintosh port <URL:>,
and perl/Tk <URL:>

	A renewal of the effort of converting the FAQs to Japanese has
begun.  You can find the ongoing updates (currently things are still old)
at <URL:>.
It is being built by Taguchi Takeshi <URL:>
and Oota Toshiya <URL:>.

	A newsbot has been implemented by
Andreas Kupries <URL:> which provides a
<URL: news:comp.lang.tcl> automated welcome, providing first time
posters some introductory remarks and a set of pointers to the FAQs and
other common resources.  You can see the current version of the mailing
by looking at <URL:>.

	A WWW form to submit entries to the Tcl/Tk software catalog is
available at <URL:>.  This provides you an interface
not only to submit new items, but to submit updates or to browse the
catalog as needed.

	A sort of "Who's Who in the Tcl Community"
directory has been created - see
for the current information.  Be sure to submit your own information.

	If you have corrections, enhancements, modifications,
clarifications, suggestions, ideas, new questions, new answers to
questions which have never been asked, or something else that I have
not covered above, contact me at <URL:>.


From: FAQ General information
Subject: -II- What is Tcl?  Tk?  Extended Tcl?  What is Tcl _not_?

o Highlights of Tcl based languages

	Tcl and Tk originated with Dr. John Ousterhout (OH'-stir-howt)
while teaching at the University of California, Berkeley, California.
A quip about the pronunciation of Dr. O's last name from
<URL: news:comp.lang.tcl> pundit <URL:> Jay Sekora:

> `It's pronounced Oh-stir-howt
>     without a doubt!
>  Not Oh-stir-hoot;
>     he's not a brute.'

	A Brief History of Tcl-ing

	See <URL:> for
more details!

	Dr. Ousterhout got the idea for Tcl while on sabbatical leave
at DEC's Western Research Laboratory in the fall of 1987.  He started
actually implementing it when he got back to Berkeley in the spring of
1988; by summer of that year it was in use in some internal
applications, but there was no Tk.  The first external releases of Tcl
were in 1989.  Tk implemention began in 1989, and the first release of
Tk was in 1991.

	John joined Sun in their research group in 1994.
During April/May, 1997, the Sun research group responsible for
Tcl development were spun off into a Sun business group called
SunScript.  However, things changed again soon afterwards.
<URL:> is
a copy of the message posted by John Ousterhout regarding the situation
as it developed during the Summer of 1997.

	During August of 1997, a Tcl Consortium was formed.  In
December of 1999, the Tcl Consortium was disbanded due to lack of

	During February, 1998, John Ousterhout left Sun to create
Scriptics, a company dedicated to scripting tools, applications, and
services.  He stated at the time that core Tcl and Tk would remain free,
with his team continuing work right now on Tcl/Tk.

	During May, 2000, Scriptics changed their name to Ajuba (a-'joo-ba)
Solutions.  The intent was to de-emphasis the scripting nature the
company previous had and to emphasize the business to business nature
towards which the company has moved.

	During June, 2000, John Ousterhout announced the formation of a
Tcl Core Team - a group of 14 key Tcl developers who are to spearhead
the coordination of current and future Tcl maintenance and enhancements.
See <URL:> for details.
This team is NOT intended to be the ones doing all the coding and debugging
of Tcl; instead, the community is urged to take part in the process.  These
fourteen will be the 'project leaders', contributing code when they can,
ideas and direction, enthusiasm, and experienced help where needed.
John Ousterhout continues as a member of the team, providing guidance and
final arbitration if necessary.

	During October, 2000, Ajuba Solutions announced the intent to merge
with Interwoven.  The association betweem Tcl and a company run by its
creator came to an end as John moves on to Interwoven.  Interwoven did
open up the source for TclPro and made the product free, as well as for
a time provided resources to keep the Tcl Developer's Xchange going.
Then, during late February, 2001, ActiveState announced the hiring of
Jeff Hobbs and Andreas Kupries, and the intention to make ActiveTcl another
of their stable of supported scripting languages.

	On April 23, 1998 the Association for Computing Machinery (ACM)
<URL:> awarded the 1997 Software System Award to
John Ousterhout and Scriptics.	This is awarded to an institution
or individual(s) recognized for developing a software system that
has had a lasting influence, reflected in contributions to concepts,
in commercial acceptance, or both. The Software System Award carries
a prize of $10,000. Financial support for the Software System Award
is provided by IBM.  See <URL:>
for the others who have won this award.

	In September of 1998, Scriptics announced the availability of
TclPro, a suite of developer tools and the Tcl Consortium announced
Tcl-Blast! - a CD-ROM containing Tcl and extension source code as
well as binaries for a number of platforms.  With the demise of the
Tcl Consortium and Ajuba Solutions I don't know where one would go to find
the (Tcl 8.0.5 based) Tcl-Blast! CD-ROM.

	Another bit of Tcl trivia has to do with sites where you find
Tcl and user contributed software.  In the beginning, John created the
heavens and the earth... no, that's not right.  In the beginning, the
Tcl and later the Tk source were available on an ftp site at Berkeley.
As user contributed software began to appear, some kind people at Purdue
graciously volunteered some disk space.  Later, when John left Berkeley
for Sun, the core Tcl and Tk software (source code, etc.) moved from
Berkeley to Sun.  Then, when Purdue no longer had resources to support the
archive, it moved to Alcatel.  Eventually, that archive was moved to Neosoft's
<URL:> archive.

	But what _is_ Tcl?

	Tcl (current release version 8.3.4) stands for ``tool command
language'' and is pronounced ``tickle.'' The home download site for
the Tcl source code is <URL:>.
For brave souls, web access to the individual modules is provided via
<URL: > and its CVS respository,
where the latest and greatest patches and improvements can be found.
Tcl is actually two things: a language and a library.  First, Tcl is a
simple textual language, intended primarily for issuing commands to
interactive programs such as text editors, debuggers, illustrators, and
shells.  It has a simple syntax and is also programmable, so Tcl users
can write command procedures to provide more powerful commands than
those in the built-in set.

	Second, Tcl is a library package that can be embedded in
application programs.  The Tcl library consists of a parser for the Tcl
language, routines to implement the Tcl built-in commands, and
procedures that allow each application to extend Tcl with additional
commands specific to that application.  The application program
generates Tcl commands and passes them to the Tcl parser for
execution.  Commands may be generated by reading characters from an
input source, or by associating command strings with elements of the
application's user interface, such as menu entries, buttons, or
keystrokes.  When the Tcl library receives commands it parses them into
component fields and executes built-in commands directly.  For commands
implemented by the application, Tcl calls back to the application to
execute the commands.  In many cases commands will invoke recursive
invocations of the Tcl interpreter by passing in additional strings to
execute (procedures, looping commands, and conditional commands all
work in this way).

	An application program gains several advantages by using Tcl for
its command language.  First, Tcl provides a standard syntax: once
users know Tcl, they will be able to issue commands easily to any
Tcl-based application.  Second, Tcl provides programmability.  All a
Tcl application needs to do is to implement a few application-specific
low-level commands.  Tcl provides many utility commands plus a general
programming interface for building up complex command procedures.  By
using Tcl, applications need not re-implement these features.  Third,
extensions to Tcl, such as the Tk toolkit, provide mechanisms for
communicating between applications by sending Tcl commands back and
forth.  The common Tcl language framework makes it easier for
applications to communicate with one another.

	Note that Tcl was designed with the philosophy that one should
actually use two or more languages when designing large software
systems.  One for manipulating complex internal data structures, or
where performance is key, and another, such as Tcl, for writing
smallish scripts that tie together the other pieces, providing hooks for
the user to extend.  For the Tcl script writer, ease of learning, ease of
programming and ease of gluing are more important than performance or
facilities for complex data structures and algorithms.  Tcl was
designed to make it easy to drop into a lower language when you come
across tasks that make more sense at a lower level.  In this way,
the basic core functionality can remain small and one need only bring
along pieces that one particular wants or needs.

	One answer to "What is Tcl?" can be found at
<URL:>.  For a white
paper written by Dr. Ousterhout discussing scripting languages, and Tcl
in particular, see
For a 1996 article in SunWorld on the state of Tcl, see
<URL:>.  Other SunWorld articles have

	Many times users post to <URL: news:comp.lang.tcl> asking about
the changes from one release of Tcl to another.  One resource of course
comes with each source release of Tcl and Tk.  A file named "changes"
lists a change log of important changes.  However, it has been pointed out
that this file is not all inclusive.  Another commonly referenced resource is
<URL:>, which has various release notes available
online.  In terms of books covering the topic, the book by Brent Welch
(see below) covers the topic over several chapters.

	Tk (current release version 8.3.2) is an extension to Tcl which
provides the programmer with an interface to the X11 windowing system.
Note that Tk has been successfully compiled under X11 R4, X11 R5, X11
R6, as well as Sun's NeWS/X11 environments.  The home download site for
this Tk release is <URL:>.

	Many users will encounter Tcl and Tk via the ``wish'' command.  Wish
is a simple windowing shell which permits the user to write Tcl/Tk
applications in a prototyping environment.

	Note that one frequently asked question is whether Tcl/Tk can
handle Japanese, Chinese, Korean, .... language fonts.  As of 8.1, Tcl/Tk
supports UniCode.  This makes it easier to provide various language
support, assuming that the appropriate fonts are available and appropriate
care is taken.

	John also has asked me to mention that information about what is
new or changed in each release is now available on the WWW.  John writes:

> there are now pages containing release notes.  The best thing is just to
> refer people to my home page, which is:

>     <URL:>
>     <URL:>

> You might put a notice about this in the FAQ to help people who see
> the FAQ after we reorganize.

	A Tcl/Tk logo and a "Tcl-Powered" logo are now available from John.
GIF images in several different sizes are available in the Tk source
code distribution's ../library/images/ subdirectory.  See the README
file in the library/images subdirectory for more details.

	From time to time, there is concern about the future of Tcl.
John has given me permission to include this quote:

>From: John Ousterhout <>
>Date: Thu, 14 Jan 1999 14:00:40 -0800

>My move from Sun to Scriptics will not change the open source nature of
>Tcl and Tk.  We will continue to develop new releases of both Tcl and
>Tk at Scriptics, and we'll release them freely in source form as has
>always been the case.  The license terms will stay the same.  You'll be
>able to use Tcl/Tk for anything you wish, including making changes,
>selling it, and redistributing it in whole or in part.

	Extended Tcl (tclX) (current release version 8.2.0) is an extended set
of commands for Tcl developed by Karl Lehenbauer and Mark Diekhans.
The authors' home ftp site for Extended Tcl is
<URL:>.  Extended
Tcl is oriented towards system programming tasks, with many additional
interfaces to the Unix operating system as well as other useful utilities.

	Expect (current release version 5.31) was perhaps the first extension
to Tcl written.  Its purpose is to ease interaction with applications which
normally interact directly with users at a terminal (such as ftp,
telnet, etc.).  The WWW site for Expect is <URL:>.
Expect is oriented towards automating command seuqences commonly
typed.  One can use Expect with Tk to create graphical interfaces to
these commands as well.  Expect works with Tcl up through Tcl 8.x.

	Many other useful (and in some cases essential) extensions
also exist.  (See "part5") for details.

o General information about Tcl and Tk by <URL:>
	(Glenn Vanderburg)

	Tcl (Tool command language) is a freely distributable simple,
interpreted language designed to be used as a common extension and
customization language for applications.  It was designed and
implemented by Dr. John Ousterhout in the hope that application
designers could spend more of their time on applications and less on
scripting languages, and in the hope that users could spend less time
learning new scripting languages for each new application.  Many useful
applications, some of them sold commercially, use Tcl as their
scripting language.

	Tcl is clean and regular, and relatively easy for non-hackers to
learn.  It is command-oriented, and commands added by applications and
users exist on an equal footing with the built-in Tcl commands.  Tcl
has both simple variables and associative arrays (tables), and all
values (including procedure bodies) are represented as strings.
Simple customization scripts (such as preference initialization
scripts) usually look much like novice users expect them to: a series
of simple commands which set options.

	Tcl is implemented as a C library, which can be embedded in an
application.  The application can add its own commands to the
interpreter (using a clean C interface).  It is distributed under a
license which allows use for any purpose with no royalties.

	The Tk toolkit is a Tcl extension (a group of new Tcl commands) which
provides a Tcl interface to the X Window System.  Tk is one of the
easiest ways to build a graphical interface to an application, and due
to the interpreted nature of Tcl, Tk-based interfaces tend to be much
more customizable and dynamic than those built with one of the C- or
C++-based toolkits.  Tk implements the Motif look and feel.  A number
of interesting X applications are implemented entirely in Tk, with no
new application-specific commands at all.  Tk also provides a
mechanism by which one application can send Tcl scripts to other
Tk-based applications running on the same display, for easy
cooperation between tools.

	Tcl and Tk are mature, and quite stable, but they are not static:
Dr. Ousterhout [...] moved from Berkeley to Sun Microsystems, where his
group [pursued] such projects as a commercial-quality Tk
graphical interface designer, an on-the-fly Tcl compiler, and
Macintosh and Microsoft Windows ports of Tk.  John has stated that the
copyright status and licensing provisions of Tcl and Tk will not change.


	As to what Tcl is not - in the context of the discussion in
<URL: news:comp.lang.tcl>, it is not related directly to the
Think C Library (TCL) available on the Mac.  Confusingly enough, the language
concerned with here _is_ available on the Mac, and someone in fact may have
used Think C to compile it there.  Just one of those universal 'coincidences'
that set the stage for Vogon interstellar highway construction crews.
Also, Oracle has a product called Tk2Motif which has nothing to do with
Tcl or Tk as we are referring to it.  Another 'TCL' that is sometimes
encountered has to do with the Pick operating system - again, that
is different than the language being discussed.

	What are some of the most common complaints about Tcl? Well of
course the primary complaint is that because it is interpreted and
because the data is primarily treated as strings, that programs written
in Tcl are slow.  Tcl 8.x attempts to address this by doing some degree
of compilation as well as permitted additional variable types.  There
are also complaints frequently about the fact that several of Tcl's
behaviors are not intuitive - comments are commands rather than
traditional comments, numbers beginning with 0 are octal, proper use of
quoting mechanisms, etc.  These are covered in the various FAQs.

	A common question is whether Tcl/Tk/etc. is Year 2000 (Y2K)
compliant.  The 'official' statement from the creator of the Tcl and Tk
core can be found at <URL:>.  A
statement from one of the <URL: news:comp.lang.tcl> readers who has done
his own analysis can be found at
<URL:>.  Information
about Y2k compliance of various Tcl based programs or extensions should
come from their creators - if the web page for the program or extension
doesn't address the issue, email the creator and ask if they would
please add such a statement.

See The Tcl Wear <URL:> web page
for images of some of the Tcl related merchandise that has been seen during
the past 5 years.


From: FAQ General information
Subject: -III- Do these packages run on my machine?

A. Unix

	Tcl runs on Sun 3s, 4s, and later models running SunOS 4 and SunOS 5
(Solaris 1.x and 2.x), DECstations running Ultrix, DEC VAXen running
Ultrix or BSD, DEC Alphas running OSF/1, 386s running SCO Unix, Xenix,
Bell-Tech, all sorts of HPs running HP-UX (even HP Snakes running OSF/1
and HP-UX).  Intel [34]86 systems running 386bsd, netbsd, freebsd,
BSDI, Solaris 2.x and Linux have Tcl ported.  In fact, Tcl/Tk even runs
on the Agenda Vr3 Linux powered Personal Digital Assistant (PDA).
Various CPUs running System V.4 report having ported Tcl.  Tcl also
appears to be running on Sequent Symmetry running Dynix as well as OSF/1.
It also has been reported that Tcl runs fine on IBM RS6000 under AIX 3.x
as well as IBM ES/9000 and AIX/ESA.  A few problems getting Tcl running
under Mt. Xinu Mach have been reported in the past.  Tcl also has been
ported to Encore 91's running UMAX V (an 88k based System V with BSD
extension Unix), as well as to Apollos running BSD/SYSV.  Tcl runs on a
Cray running Unicos.  Someone ported Tcl to a Sony NeWS machine running
NEWS-OS 4.2.  A Tcl port to a Convex 3220 and 3880 was also reported.
Reports have been made of  Tcl/Tk/BLT/itcl compiled on a Mac running the
latest A/UX.  A port to Tenon MachTen 2.1VM, running on a Mac II which
was running MacOS System 7.1, has been reported.  A port to a Mac running
mkLinux has been reported.  Tcl also runs on Supermax Motorola/MIPS based
multiprocessors under SMOS.  LynxOS 2.4.0 and 2.5.0 come with Tcl and
expect (but not Tk).  LynxOS 2.4.0 comes with Tcl 7.3.  I've had a report
of Tcl 7.[56] (as well as Tk 4.[12]) being built on LynxOS and Tru64 OS.

	Tk (being based on Tcl) generally requires X11R4 or better as
the only additional software requirement.  It runs on any of the above
Unix systems with that base of software.  It also runs on VMS and

	Note that SGI is shipping Tcl/Tk, TclMotif, expect, and some other
custom extensions along with the OS starting with Irix 6.2.  The desktop
environment is called Indigo Magic.

	For information on Tcl/Tk/TclX availability (see "part4").

B. MacOS

	(See "part2") for details of a Macintosh Tcl Mailing list.

	From Tcl 7.5/Tk 4.1 on, the source code for Tcl and Tk should
compile and run on a Macintosh from the original distribution.

	The following BOF report from MacWorldExpo 1999 mentions support of
Tcl being added to MacOS X CR1

	Also (see "part4"), the Tcl programs/packages catalog,
for the latest port locations and versions.

C. INTEL DOS-like systems

	From Tcl 7.5 on, the source code for Tcl and Tk should compile
and run on Windows machines from the original distribution.

	Steve Furr <URL:> reports getting Tcl ported
to QNX without a lot of trouble.  He mentions that QNX users who have
the beta X should have gotten a CD-ROM update with Tcl and Tk on the

	A port of Tcl 7.3, except for glob or command pipelines, to OS/2 2.x
using C Set++ has been done by <URL:> (Bud Bach).
Andreas Stuebinger <URL:>
also has done an OS/2 port of Tcl (version unknown).  Tcl 7.4 has been
ported to OS/2 by Stefano Fornari <URL:>
It is available at

	Illya Vaes <URL:> has ported Tk 4.1 and Tk 4.2
(the Win32 version) to OS/2 Presentation Manager.  The ports use the
the native PM/GPI calls and the EMX runtime and support OS/2 2.x.
They can be downloaded from
<URL:> (binaries 4.2),
<URL:> (source 4.2).
(and from Neosoft).

It is reported that Ilya Zakharevich <URL:>
is doing something similar, using the Developer's API extensions to
directly support most of the Win32 API's under OS/2 Warp with DAX/DAPIE
and Fixpack 17 installed and the Open32 manager.  Contact them for more
details on the progress being made.

	Versions of Tcl for Windows 3.x, Windows 95, Windows NT, OpenNT
should all be available or buildable.

	Also (see "part4"), the Tcl programs/packages catalog,
for the latest port locations.


	A port of a variety of versions of Tcl/Tk to VMS have been done
by Angel Li <URL:>.  The files are at
and were compressed with the Unix compress command.
These were compiled on an Alpha running OpenVMS T6.1.

	A port of Tcl 6.3 onto VMS 5.5 was done by Wolfgang Kechel
<URL:> and Till Imanuel Panzschke.  Contact them
directly for assistance.

	Gerald W. Lester <URL:> says the following
_should_ work.  If you installed the POSIX package on VMS (its free),
then you should be able to configure and make tcl.  To access tcl you
would have to do one of the following: 1) Use the POSIX shell, or 2) do
a "psx tcl".  Tcl scripts would not execute directly from DCL; to
execute a script foo.tcl from DCL you would have to do "psx foo.tcl".
DISCLAIMER: I have not built any version of tcl under VMS POSIX, these
comments are based on other work I've done with VMS POSIX.
is a version of Tcl/Tk for VMS built as a sharable library.  It
includes a dynamic module loading command.  Otherwise, it matches the version.

	Also (see "part4"), the Tcl programs/packages catalog,
for the latest port locations.

E. AmigaDOS

	Karl Lehbauer <URL:> has indicated that
he started a port of Tcl 3.x to the Amiga.  He has a working
version, but is no longer working on it.  His version uses the
Amiga's shared libraries and implements the "send" command.
He wrote a MIDI file loader and player as well.  Contact him for
further details.

	Ty Sarna <URL:> has ported Tcl 6.x to the
Amiga.  He says:
> I've ported 3.3 and several 6.x versions to the Amiga, and it can be
> done in under and hour if you leave out the "Unix" functionality.
> However, "Unix" functionality includes things like file I/O!

	Another Amiga user, <URL:>
(Colas Nahaboo), mentioned that using Amiga gcc and the PD X server DaggeX
and Xlibs that a port of Tk might be possible.

	<URL:> (Marco van der Heiden) has
completed a port to the Amiga, and suggests Amiga developers contact him
by email.

	<URL:> (Berndt Wulf) reports building
Tcl and Tk on an Amiga system running NetBSD1.0b2, using the sources on
the Walnut Creek Tcl/Tk CD-ROM.

	A version of Tcl is apparently available on Fish disk number 447.
I do not have information concerning what version of Tcl this is.  It
is my understanding that the Fish disks are available on many of the
Amiga Internet archive sites, one of which is

	Tcl 7.6 and Tk 4.2 can also be found on the Geek Gadgets CDROM
(formerly known as ADE) and on any ADE/Geek Gadgets FTP server along
with an X11 server and a complete development kit for unix apps.  The
main site is <URL:>. This version
of Tcl/Tk is not limited in any way (ie. everything should work as the
Unix version) and Tcl/Tk 8.0+ should appear soon.

	Also (see "part4"), the Tcl programs/packages catalog,
for the latest port locations.


	At one time, information about compiling Tcl and Tk were
in the FAQs.  This info appears to be gone now.  Perhaps the configure
information compiles out of the box.  If not, please forward info to
<URL:> and I can add pointers here to you.

G. Other

	A port of Tcl 7 has been done to VxWorks.
	You can find it at
<URL:>, and
or names similar (if updates have occurred).  A diff file that appears to
make Tcl 8.x compatible is in this ftp directory.
Also Wind River Systems's Tornado development environment includes a
tcl interface for VxWorks.

	A port to GEOS was attempted, but it was found to be difficult to
run there (except perhaps under the desktop platform) due to resource limits
and constraints.

	A port of Tcl/Tk and X11R6 to OS-9 has been reported to be
done by <URL:> Kei Thomasen.  A different port of
Tcl/Tk to OS-9 was done by <URL:> Heinz-Juergen Oertel.

	A port of Tcl 8.0 has been done to BeOS, by Dave Mills
<URL:>.  See
<URL:> for details.

	A port of Tcl 7.4 to Archimedes RISCOS 3.1 or later was performed
by C.T.Stretch <URL:>.

	A port of Tcl/Tk 8.0.3 with the plus patch applied,
as well as Expect 5.28, to OS/390 was reported by
Ingo Struewing <URL:> in early 1999.

	A port of Tcl/Tk to Windows/CE has been mentioned as being in
progress at times in the past, but no formal announcement has been made.
A port of Tcl/Tk to LinuxCD was reported at least once.  No definite work
to port Tcl to PalmOS has been reported.

	Also (see "part4"), the Tcl programs/packages catalog,
for the latest port locations.


From: FAQ General information
Subject: -IV- Other than C, what languages can talk to tcl/tk?

A. Shell

	There are a number of interfaces which are shell-like.  The
first is tclsh, which comes as a sample program implementing a Tcl
interpreter as a part of the Tcl distribution.  Another is wish, which
is a shell-like interface that is a part of the Tk package.  Many of
the other extensions also build interpreters as well.  The tclX extension
is an example - it builds an interpreter called tcl as well as one called

B. C++

	There is a package called Objectify which can be used to assist
one in turning C++ classes into Tcl object types.

	If you wish to use C++ with Tcl then you must have your main()
in a source file that is compiled with a C++ compiler; this will
ensure that the necessary C++ pre-main initialization code is

	You can call tcl and tk routines (or other C code) routines from C++
provided that the function prototypes avoid C++ name mangling by using
the C++ linkage specification :

	extern "C"  ... prototype ...

	Fortunately, tcl.h and tk.h will provide these specifications when
compiled with a C++ compiler and so you can just use them directly.

	You can construct your main using normal tcl and tk routines,
or use tkMain.c and tkAppInit.c with minor modifications. Ken Yap's
patch, obtainable from
is a patch that allows tk 3.6 main.c and other extension routines to be
compiled with a C++ compiler.  Thanks to Ken Yap
<URL:> for this code.

	C++ functions and static class member functions can be used to
create Tcl command using Tcl_CreateCommand in the normal way.
Non-static member functions cannot be used so simply, Tcl would
have to supply a "this" pointer.

	SWIG <URL:> is another great
resource for using C++ and Tcl.  To quote the author:

> SWIG is a code development tool created to solve real problems and
> make C/C++ programming more enjoyable. Simply stated, SWIG
> allows you to integrate common scripting languages such as Tcl,
> Perl, Python, and Guile with programs containing collections of
> functions written in C or C++. By using an interpreted scripting
> language with a C program, you can do a number of cool things like:
>         Build a powerful interface.
>         Rapidly prototype new features.
>         Interactively debug and test your code.
>         Develop a graphical user interface.
>         Build C/C++ modules for scripting language applications.
>         Save lots of time--allowing you to work on the real problem.
>         Impress your friends.

One user notes:
> To contrast SWIG with Objectify - SWIG has you prepare a small interface
> file that specifies what functions are to be wrapped, rather than adding
> macros to your original header file.  It also works with C, as well as
> C++.

C. Modula-3

	Norman Ramsey <URL: mailto:elan.uucp!nr> says:
	A long time back, Eric Muller posted a Modula-3 interface to
the C Tcl library.  I wrote down a Modula-3/Tcl interface that used
Modula-3 types rather than C types, and that used objects to build
closures for commands.  I wrote part of the implementation but never
finished it.  I have mailed copies to <URL:>,
who asked the question, and I will post them if there seems to be general

	Also, there is an interface between Tk and Modula-3 that is a part
of the Modula-3 archives on <URL:>, and Tcl-DP and
Modula-3 have been merged.

D. Eiffel

	<URL:> (Stephan Herrmann) says:
	... [the tclish package provides] the marriage of two very different
principles by means of combining two programming languages into a
hybrid program architecture.

	There are three classes for the user - tcl interpretor, tk application,
and tk window.  See <URL:> for

E. Ada

	<URL:> (Dennis Heimbigner)
introduced an adatcl package which gives Ada programmers access to Tcl
interpreters.  (See "part4") for details of the package.

F. Perl

	In the past, efforts by Dov Grobgeld
<URL:> and Guenther Schreiner
<URL:> were made to develop at least 2
Perl 4 to Tcl/Tk interfaces.

	More effort has occured in the Perl 5 environment, where an
extension to allow Perl 5 to directly access the Tcl C API, as well as an
extension to allow the ability to do Tk programming without a Tcl
interpreter involved at all are available.  These packages can be ftp'd
from the Comprehensive Perl Archive Network (CPAN) - a series of ftp
sites which keep the latest and greatest archives of Perl code in sync.
See <URL:> for a pointer to CPAN,
and follow the links to find the Tcl related Perl packages.

G. Prolog

	The package ProTcl is an interface between Prolog and Tcl/Tk.
It works best with ECLiPSe, but the foreign interface of SICStus and Quintus
is also provided. The interface is dynamically loaded into a Prolog process
and it gives access to Tcl commands and to handling Tk events. It is also
possible to call Prolog from Tcl, handle Tk events in Prolog and to
pass Prolog variables back to Tcl. See
<URL:> for more details.

H. Other

	A module for Python based on Tk is available - more details are
available in <URL: news:comp.lang.python> on this front.

	Tk bindings for the Dylan language are being shipped as a part
of CMU's Mindy compiler for Dylan.  The Sather language also has a set
of classes to bind in Tk/Tcl.

	Duncan Sinclair <URL:> has details of a
hack into wish.c some hooks for a Tk to any language system, and has been
using it for communication with functional languages such as Haskell and
Lazy ML.  A paper, plus sample code, was available by ftp from
Unfortunately I've been unable to confirm this is still available.

	The InterLanguage Unification project is a system that promotes
software interoperability via interfaces.  It has the ability to allow
Common Lisp, ANSI C, C++, Modula 3 to interact and plans to add Python,
Tcl, and GNU Emacs-Lisp shortly.

	Of course the Wafe application environment is designed to make
it easier to do X like applications from within several languages using
Tk as a basis.

	There are several interfaces to allow one to interface with SQL
though some are specific to a database such as Oracle.

	There is an interpreter for Silicon Graphics machines for SGI's
GL language.  There is an interface to WOOL.  The GNU language Guile not
only has a Scheme backend, but a Tcl one as well.  There are at least
two interfaces to Tcl for Java.  There is a Caml Light interface to
Tcl/Tk.  There is a commercial product which provides an interface
between Objective C and Tcl.  There is an interface between Oz and Tcl/Tk.
There is a subset of Modula-3 with a Tk binding.  There is at least one
interface between Scheme and Tk.  There is a binding in Gopher for Tcl/Tk.

	For more details on the above efforts, (see also "part4").


From: FAQ General information
Subject: -V- What training material is available?

Here you can find a brief list of Tcl or Tk related books.
I currently only list brief notes about some of the books - unfortunately
I removed a lot of info and pointed people over to the Tcl Consortium's
site.  Now that it is gone, I will be attempting to update my lists to make
them more complete.  I also list other books they didn't list.
Just a note - I currently don't work for any of these.  In some
cases, someone has contributed the description of their own books.
In most cases, I haven't even seen the book that's described - I just
am using the information from book catalogs, press releases, etc.
Another resource can be found at <URL:> and
their resource center.  Another source of info regarding Tcl books is
Finally, encourages readers to submit reviews of books.

PLEASE!  If you read one of these books and find it good,
or bad, place your reviews on this site.  If you have a different
site you prefer, drop me a line and I will add a mention of that
book review site here as well.  This way I can attempt to avoid
it looking as if I hated or loved some particular book, but
instead can leave it to those buying the books to indicate how
good or bad a title is.

1. Title: Obfuscated C and Other Mysteries
Author: Don Libes <URL:>
WWW book information: <URL:>

This is not your typical programming book.  This book discusses programming
in the Unix environment in a humorous manner.  However, specific
solutions to issues are addressed.  Separate chapters on Tcl and Expect
are covered.

2. Title: Tcl and the Tk Toolkit
Author: John K. Ousterhout
WWW book information: <URL:;ptype=1176>
Book's examples: <URL:>
Book supplement: <URL:>

	The book primarily covers Tcl 7.3 and Tk 3.6.  A German translation of
this book, titled _Tcl und Tk_, with the ISBN of 3893197931, is also

	While the book is a good intro to Tcl, its basis on the older
Tk makes it difficult to use for some types of Tk development.
The tk4.0 porting guide postscript document with a few of the issues.
However, there have been many changes since Tk 3, particularly in
Tk 8's cross platform environment.

3. Title: X User Tools
Author: Linda Mui and Valier Quercia
Publisher: O'Reilly & Associates
	103A Morris Street
	Sebastopol, CA US 95472
Publication date: November 1994
ISBN: 1565920198
Pages: 856
Price: 49.95 US
WWW book information: <URL:>

Chapter 30 covers writing tools in Tcl/Tk.  Several Tcl and Tk tools
are available on the CD-ROM.  However, since it is more than 2 years old,
it is a rather outdated version of Tcl/Tk.

4. Title: Exploring Expect
Subtitle: A Tcl-Based Toolkit for Automating Interactive Applications
Author: Don Libes <URL:>
WWW book information: <URL:>
Book's examples: <URL:>
Errata: <URL:>

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, do signal
handling, 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 remains in the first edition.  There have only been a
few corrections and updates so they have been easily incorporated in
new printings.  The last time Don had to make any corrections was in the
third printing.

Exploring Expect was originally based on Tcl 7.3 and 7.4 alpha.
However, the book correctly describes 7.5 as well.  Almost all of the
recent changes in Tcl were under the cover - which is not the focus of
Don's book, so it is still accurate.

Interesting story time: Don only needed to make one change in the book
when Tcl 7.4 came out of alpha.  Tcl 7.4 added checking for overflow
which was something his random number generator didn't like.  So he
changed the constants in the 2nd printing to avoid this problem.
Later, Ousterhout got enough grief from people that he later changed
it back.  So it turned out that Don really hadn't needed to make any
changes to the book after all.

The book was also based on Tk 3.6 and Tk 4 alpha.  Don's book doesn't
go into enough depth on Tk that this really matters - in fact, he only
needed to mention a difference between Tk 3 and Tk 4 at one point.  So
the text is still accurate.  He does, however, have a lot of real code
and some of the Tk examples no longer work quite right because of the
way bind changed.  However, all of those examples come with the Expect
tar file and they are Tk4-ized, so it shouldn't be a significant
problem.  The text describing the examples is still correct.

Note that a new version of Expect is in testing for Tcl 8.0.  To get it,
check on the WWW home page for the beta version of Expect.

The WWW home for Expect is <URL:>.

5. Title: How to Manage Your Network Using SNMP
Subtitle: The Networking Management Practicum
Authors: Marshall T. Rose <URL:>
	Keith McCloghrie
Publisher: Prentice Hall
Publication date: January 1995
ISBN: 0131415174
Price: 52.00 US

_How to Manage your Network..." describes a Tcl-based SNMP API, and contains
several example programs.

6. Title: MH and xmh
Subtitle: E-mail for users and programmers, Third edition
Author: Jerry Peek
Publication date: April 1995
ISBN: 1565920937
Pages: 782
Price: 34.95 US
WWW book information: <URL:>

Besides the obvious also covered the Tk application exmh.  According
to the publisher, this product has been discontinued.

7. Title: Practical Programming in Tcl and Tk, Third edition
Author: Brent Welch <URL:>
WWW book information: <URL:>
Book's examples: <URL:>
Book's table of contents: <URL:>

This updated edition describes Tcl / Tk 8.2.1.  Along with the material
from the first two editions, it also covers the tcl web server, building
tcl and extensions such as tk, etc. from the source, internationalization,
the new regular expressions, the plugin and a great section describing
the changes from Tcl 7.4 to 8.2 and even the proposed changes for 8.3
(and Tk as well).

Also note that Prentice Hall is advertising the following as a companion

Title: Tcl/Tk Multimedia Cyber Classroom
Authors: Brent B. Welch
	Dave Zeltserman
Publisher: Prentice Hall
ISBN: 0139593470
Price: 49.95 US

100% interactive training course on CD-ROM.  3 hours of audio explanations
of key Tcl/Tk concepts and interactive exercises.  Runs on Windows 95,
Windows 98, Windows NT, and Solaris.

NOTE:  A third edition ins expected in Fall of 1999.

8. Title: UNIX Test Tools and Benchmarks
Subtitle: Methods and Tools to Design, Develop, and Execute Functional,
	Structural Reliability, and Regression Tests, 1/e
Author: Rodney C. Wilson
WWW book information: <URL:>

This book covers in-depth discussions of state of the art
testing strategies, technologies, and benchmarking products.
Among the testing tools covered are expect, Tcl, Tk and many others.

10. Title: Tcl and Tk Reference Manual
Editors: Donald Barnes,
	Marc Ewing <URL:>,
	Erik Troan
WWW book information: <URL:>

11. Title: The Visualization Toolkit
Subtitle: An Object-Oriented Approach to 3D Graphics
Printing: 2/e
Authors: Will Schroeder, Ken Martin, Bill Lorensen
WWW book information: <URL:>

The book contains software (written in C++ and Tcl/Tk) and information
to assist you in transforming data into 3D graphics.  The book covers
key algorithms, modeling, and techniques for various types of
visualization.  The CD-ROM contains 400 megabytes of software, data
images, and documentation.  The software runs on Unix, Windows 95, and
Windows NT.

12. Title: Graphical Applications with Tcl and Tk
Author: Eric Foster-Johnson <URL:>
WWW book information: <URL:>

The second edition of this book focuses on creating and debugging
cross-platform graphical applications using Tcl/Tk 8.0.  Windows and
Unix development is covered.  The book comes with a CD-ROM containing
Tcl/Tk sources, a binary Windows with install program, source code
examples from the book and Tcl freeware.

13. Title: Bots and Other Internet Beasties Book/CD Package
Author: Joseph Williams
WWW book information: <URL:>

Book covers internet robots, spiders, worms, and other agents.
Covers software written in Tcl/Tk.

14. Title: RedHat Linux Unleashed Book/CD Package
Authors: Kamran Husain, Tim Parker,  et al.
WWW book information: <URL:>

Book covers the Linux OS/Environment.  This includes Tcl/Tk as well as many
other subjects.

15. Title: Tricks of the Java Programming Gurus
Author: Glenn Vanderburg
WWW book information: <URL:>

This book is primarily a book about advanced Java techniques.  However,
there's a chapter on the ability to embed a Tcl interpreter into a Java
application using a native method library under Unix, as well as info
on ways that Tcl might be useful for a Java application.

16. Title: The Visual TCL Handbook, 1/e
Author: David Young <URL:>
WWW book information: <URL:>

A comprehensive guide to Visual TCL.  This book leads reader from basic
graphical user interface development concepts to meaningful application
development.  The book focuses on the TCLX and VT extensions,
addressing many fundamental TCL topics.  VT is a Motif based graphical
interface, incompatible with Tk.  The entire TCL language is documented
in a separate Commands section.  Comes with a CD-ROM that includes SGI,
Solaris, HP-UX, AIX and Unixware versions of Visual Tcl.

17. Title: Running LINUX
Author: Matt Welsh and Lar Kaufman
WWW book information: <URL:>

Running LINUX deals with Linux administration.  Has a chapter on programming
using C, C++, Perl, Tcl/Tk.  A companion product containing a CD-ROM is

18. Title: Understanding OSF DCE 1.1 For AIX and OS/2
Author: Rolf Lendenmann
Publisher: PTR Prentice Hall
Publication date: August 1996
ISBN: 0134937503
Pages: 312
Price: 36.00 US

This book teachs OSF's Distributed Computing Environment.  It covers
many aspects of DCE and teaches how to create control scripts and RPC
programs using Tcl, RPCs, and threads.

19. Title: LINUX Companion
Subtitle: The Essential Guide for Users and System Administrators, 1/e
Author: Mark F. Komarinski
WWW book information: <URL:>

LINUX Companion covers a lot of information about Linux.  Chapter 11 is
the development tools chapter, and gcc, g++, Perl and Tcl/Tk are

20. Title: Beginning Linux Programming
Authors: Neil Matthew, Richard Stones
WWW book information: <URL:>

Introduction to various types of programming tools.  Includes a chapter
on programming in Tcl/Tk.  Supposedly it will be followed by Instant,
Revolutionary, and Master Class editions.  Source code supposedly available
on WWW.

21. Title: CGI Bible
Author: Ed Tittel <URL:>
	Mark Gaither <URL:>
	Sebastian Hassinger <URL:>
	Mike Erwin <URL:>
WWW book information: <URL:>

CGI Bible is a paperback with CD-ROM.  It covers HTTP and HTML briefly,
SGML and HTML DTDs (and validation), HTML 3.0, CGI (including the various
languages which can be used, mentioning Tcl), then proceeds on to the
topic of the design of CGI applications (using perl 4 - shudder).

22. Title: Tcl and Tk Reference Card
Publisher: Specialized Systems Consultants
Publication date: December 1996
ISBN: 0916151808
Price: 4.50 US
WWW book information: <URL:>

Tcl cards cover Tcl 7.3.
Tk cards cover Tk 4.0.

23. Title: Tcl Reference Card
Author: Michael K. Johnson
Publisher: Specialized Systems Consultants
Publication date: December 1996
ISBN: 0916151867
Price: 3.00 US
WWW book information: <URL:>

Tcl cards cover Tcl 7.3.

24. Title: Tk Reference Card
Author: Michael K. Johnson
Publisher: Specialized Systems Consultants
Publication date: December 1996
ISBN: 0916151859
Price: 3.00 US
WWW book information: <URL:>

Tk cards cover Tk 4.0.

25. Title: Linux Programming
Authors: Patrick Volkerding,
	Eric Foster-Johnson <URL:>,
	Kevin Reichard
Publisher: M and T Books
Publication date: January 1997
ISBN: 1558285075
Price: 39.96 US
WWW book information:

This book and CD-ROM covers every major programming tool available for Linux,
including Tk.

26. Title: Mastering Regular Expressions
Author: Jeffrey Friedl <URL:>
WWW book information: <URL:>
More book information: <URL:>

This book explains regular expressions in general, and then covers a number
of different tools explaining specialized variations.  Tcl is one of the
tools covered in its own chapter.

27. Title: Cookbook for Serving the Internet: UNIX Version, 1/e
Author: Philip E. Bourne
Publisher: Prentice Hall PTR
Publication date: February 1997
ISBN: 0135199921
Pages: 336
Price: 29.95 US
WWW book information: <URL:>

Cookbook is intended to help one set up their own UNIX internet information
server.  Covers where to find the software tools needed, how to design the
structure of the information server, how to decide what information
to upload, plan the use of graphics, how to write interactive forms,
when to do custom programming in Perl or Tcl, etc.
I don't know yet how much Tcl is actually mentioned in the book.

28. Title: CGI Developer's Resource: Web Programming in Tcl and Perl
Authors: J.M. Ivler <URL:>
	Kamran Husain
WWW book information: <URL:>

CGI Developer's Resource is a paperback with a CD-ROM.  It contains
complete program examples.  The write up describes this book as covering
a methodology of the analysis, design and coding of enterprise-wide CGI
scripts in both Tcl and Perl.  All source (over 50 solutions) from the
book, as well as valuable programming tools, are contained on the CD-ROM.

29. Title: Tcl/Tk for Dummies (For Dummies)
Authors: Timothy Webster, with Alex Francis
WWW book information: <URL:>

Another one of the series of the paperback programming books.  This one
focues on the Tcl plugin as a programming environment.

The focus here is primarily on Tk.  The topic coverage appears to be

30. Title: Effective Tcl: Writing Better Programs in Tcl and Tk
Author: Mark Harrison <URL:>
	Michael J. McLennan <URL:>
WWW book information: <URL:>
WWW examples: <URL:>

Practical information on how to exploit the full potential of Tcl/Tk.

31. Title: Database Backed Web Sites
Author: Philip Greenspun <URL:>
Publisher: Ziff-Davis Press
Publication date: May 1997
ISBN: 1562765302
Price: 29.95 US
WWW book information: <URL:>
WWW demo site: <URL:>

A book on how to think about your Web publishing philosophy, make
money (shudder), and build RDBMS-backed Web sites.  This book will
contain lots of examples of using the AOLserver, Tcl and RDBMS.

32. Title: Tcl/Tk Tools
Editor: Mark Harrison <URL:>
WWW book information: <URL:>
FTP site for examples: <URL:>

This is a paperback with source code CD-ROM.  The book covers the various
Tcl extensions at a snapshot in time - i.e. Tcl 7.6.
Extensions such as BLT, ET, expect, GroupKit, [incr Tcl], [incr Tk],
[incr Widgets], MTtcl, Oratcl, Sybtcl, TCL-DP, TclX, Tix, TKReplay, Tree,
TSIPP are covered.  Several other topics, such as info on configuration
and debugging Tcl/Tk are also covered.
Some of the sources, as well as binaries for Linux and Solaris platforms,
appear on the CD-ROM.
However, some of the code does not appear on the first edition of the
CD-ROM.  Watch the ftp location where the missing code will be made

33. Title: Mobile Agents: Explanations and Example
Authors: William R. Cockayne <URL:>
	Michael Zyda <URL:>
WWW book information: <URL:>

Paperback with CD-ROM

Book covers the technology to create mobile agents via various
mechanisms, including Agent Tcl, Telescript, Ara, Aglest Workbench.
Includes software to allow the reader to create and use mobile agents
on the internet.

34. Title: The Pattern Recognition Basis of Artificial Intelligence
Author: Donald Tveter <URL:>
Publisher: IEEE
Publication date: August 1997
ISBN: 0818677961
Pages: 350
Price: 46.00 US
WWW book information: <URL:>
Book examples: <URL:>

An introduction to artificial intelligence.  At least one of the software
packages described in the book is written in Tcl/Tk and is available
for Unix, DOS and Windows 3.x.

35. Title: Interactive Web Applications With Tcl/Tk
Authors: Michael Doyle
	Hattie Schroeder
Publisher: AP Incorporated
Publication date: February 1998
ISBN: 0122215400
Pages: 600
Price: 39.95 US
WWW book information: <URL:>
Book examples: <URL:>

Paperback with CD-ROM.
This is a learning by example book, for someone who knows a bit of
programming, but is not an expert.  It covers developing applets as
well as stand-alone applications and simple server applications.  The
examples have been tested with both Windows and Unix.
The book comes with the Spynergy toolkit, which adds a variety
of pure Tcl/Tk procedures for distributed processing, URL retrieval,
HTML rendering, database management and platform independent file managment,
Ed, a Tcl editor and testing environment, an image conversion tool, a
demo of Tk features, a client/server version of a rolodex application,
a pure Tcl web server, a client/server push application, a tcl web browser,

36. Title: Tcl/Tk Workshop Proceedings
Subtitle: NR Edition
Publisher: Usenix Assoc.
Publication date: 1995, 1996, 1997, 1998
Price: varying
WWW book information:

Usenix prints the proceedings from each year's Tcl/Tk workshop.

37. Title: Professional Java Fundamentals
Authors:  Shy Cohen
Publisher: Wrox Press
ISBN: 1861000383
Pages: 500
Price: 39.95 US
WWW book information:

Describes the shell, unix, terminal and curses environment, a variety
of Java issues, and Tcl programming.  Why?  I have no idea.

38. Title: Effektives Programmieren mit Perl5
Author: Michael Schilling
Publisher: Addison-Wesley
ISBN: 3827310954
Price: 59,90 DM
WWW book information: <URL:>

Effective Programming, available only in German, is a book and CD-ROM
which covers Perl 5, OO-Perl, Perl/Tk, Perl and the Internet, and more.

39. Title: Cross-Platform Perl
Author: Eric F. Johnson <URL:>
Publisher: M and T Books <URL:>
Publication date: September 1996
ISBN: 155851483X
Price: 34.95 US
WWW book information: <URL:>
Errata: <URL:>

Cross-Platform Perl focuses on writing cross-platform perl applications.
Covers Perl on Windows NT and Unix.  It also covers Perl/Tk as well as
other Perl add-on modules for writing CGI, etc.  Comes with a CD-ROM
containing the Perl 5.002 source code, a binary version of Perl 5.001
for Windows 95 and Windows NT, sources from the book examples and various
Perl freeware.

40. Title: UNIX Programming Tools
Author:   Eric F. Johnson <URL:>
Publisher: M and T Books <URL:>
ISBN: 1558514821
Price: 34.95 US
WWW book information: <URL:>
Errata: <URL:>

This paperback`s focus is teaching one how to use Unix to do programming.
However, a discussion of Perl and Tcl as interpreters is present, and the
CD-ROM includes Tcl 7.6 and Tk 4.2, as well as many other pieces of
software useful when programming on Unix (gcc, Java, LessTif, tkdiff,
Cocoon, cxref, Perl 5.003, emacs, tkedit, vim, CVS, gdb/tk and other

41. Title: Linux Configuration and Installation, Second Edition
Authors:  Patrick Volkerding,
	Kevin Reichard, and
	Eric F. Johnson <URL:>
Publisher: MIS: Press
Publication date: January 1996
ISBN: 1558284923
Price: 39.95 US
WWW book information:

Comes with 2 CD-ROMs.  Has a brief introduction to Tcl in the section on
programming.  CD-ROM has Tcl/Tk along with a lot of other tools on it.
The CD-ROM was recently updated to include Slackware 3.2.

42. Title: Advanced Perl Programming
Author: Sriram Srinivasan
Publisher: O'Reilly & Associates
Publication date: August 1997
ISBN: 1565922204
Pages: 434
Price: 34.95 US
WWW book information: <URL:>
Errata: <URL:>
Book examples: <URL:>

Advanced Perl covers objects, network programming, databases, and other topics,
such as two chapters on Perl/Tk.

43. Title: Programming Python, 2nd Edition
Subtitle: Object-Oriented Scripting
Author: Mark Lutz <URL:>
Publisher: O'Reilly & Associates
Publication date: October 1996
ISBN: 0596000855
Pages: 1256
Price: 54.95 US
WWW book information: <URL:>
Errata: <URL:>

Book (and CD-ROM) covers the use of the Python programming language.  The
book is full of running examples (all of which come on the CD-ROM).
CD-ROM also contains versions of Python for all major UNIX, Windows,
Windows NT, and Macintosh platforms.  There are a few hundred pages
that use python's Tkinter interface to Tk.

A second edition, covering Python 2.0, is now available.

44. Title: Web Client Programming with Perl
Subtitle: Automating Tasks on the Web
Author: Clinton Wong
Publisher: O'Reilly & Associates
Publication date: March 1997
ISBN: 156592214X
Pages: 228
Price: 29.95 US
WWW book information: <URL:>
Book's examples:

Web Client Programming discusses extended your Perl scripting abilities to
the WWW.  A section on Tk including two or three examples is included.

45. Title: Web Development with TCL/TK 8.1
Subtitle: A Complete Resource for Programmmers and Developers
Author: Steven Holzner
Publisher: John Wiley & Sons
Publication date: February 1999
ISBN: 0471327522
Pages: 544
Price: 44.99 US

This book focuses exclusively on Web applications.  Contains lots
of examples, including writing a Web browser, interacting with other
languages, writing of Tclets.  A web site featuring the source for
the examples from the book is available.

46. Title: Programacion en Tcl/Tk
Authors: Francisco Ramon Feito Higueruela,
	Rafael Jesus Segura Sanchez <URL:>,
	Francisco de Asis Conde Rodriguez,
Publisher: Universidad de Jaen (Spain)
Publication date: January 1997
ISBN: 8488942966
WWW book information:

The first Tcl/Tk book in Spanish.

47. Title: UNIX Power Tools, Second edition/
Authors: Jerry Peek, Tim O'Reilly, and Mike Loukides
Publisher: O'Reilly & Associates
Publication date: August 1997
ISBN: 1565922603
Pages: 1120
Price: 59.95 US

This paper back and CD-ROM, covers the best tools for using Unix.  The
CD-ROM includes a large number of freely distributable software tools,
including Tcl.

48. Title: Web TCL Complete
Author: Steve Ball <URL:>
Publisher: McGraw-Hill Book Company
Publication date: June 1999
ISBN: 007913713X
Pages: 500
Price: 49.95 US
WWW book information: <URL:>

Paperback and CD-ROM which includes coverage of Web applications, Tclets, and
Tcl/Java interfacing. The CD-ROM features a Tcl plug-in for Netscape
browsers, plus Tcl, TclJava, and Jacl code, and a complete channel
driver written in Tcl.

The book will be covering all aspects of Web programming: from
server-side CGI scripting and microscripting through to client-side
Tclets and hyperpage scripting, with some general network programming
thrown in for good measure.

The author plans on including lots of example scripts, but probably not much C
code - this is 100% Pure Tcl(TM) - which will provide a coherent
collection of applications and libraries.  He'll also include examples
of code reuse; for server- and client-side processing of forms for

The web site has online drafts of a number of chapters being written.

49. Title: Building Network Management Tools With Tcl/Tk
Authors: Dave Zeltserman and Gerard Puoplo
Publisher: Prentice Hall
Publication date: April 1998
Nth Printing:
ISBN: 0130807273
Pages: 448
Price: 48.00 US
WWW book information: <URL:> ???
Book's examples:

Tools for people responsible for managing or consulting about networks.
This book is more about building useful network management applications
than it is about Tcl/Tk.
Covers TickleMan and Scotty, two Tcl packages that provide access to SNMP.
Covers among other things the building of tools to calculate network
statistics, a web accessible server, network and status monitoring tools,
discovery tool,  IP path tracing tool, and RMON2 configuration assistance tools.

50. Title: Tcl & Tk Reference Manual
Publisher: Linux Systems Labs
Publication date: May 1996
Price: 29.95 US
WWW book information: <URL:>
Book's examples:

51. Title: Tcl/Tk For Programmers
Authors: J Adrian Zimmer <URL:>
Publisher: IEEE Computer Society
Publication date: 1998
ISBN: 0818685158
Pages: 560
Price: 45.00 US
WWW book information: <URL:>
Book's examples: <URL:>
Errata: <URL:>

The material in Mr. Zimmer's course "Internet Introduction To Tcl/Tk" has been
folded into this book.  Covers Tcl, Tk, and the C/C++ connection.  Both
GUI and TCP/IP client programmer are given introductory treatments.  Includes
over 200 solved exercises which have been tested on both Unix and Windows 95.

Author says: Image an elementary text, comprehensive manual and collection
of production quality scripts.  The approach taken in writing this book
lies somewhere between those things.

Sample chapters at the WWW book site include short introductions to
Tcl, Tk, regular expressions and the plugin.

Covers Tcl, Tk and the C/C++ connection.  Both GUI and TCP/IP client
programming are given introductory treatments.  Over 200 solved exercises

52. Title: The Complete TCL/TK Training Course With CDROM
Authors: Brent B. Welch and Dave Zeltserman
Publisher: Prentice Hall
Publication date: June, 1998
ISBN: 0130807567
Pages: 630
Price: 99.95 US
WWW book information:
Book's examples:

53. Title: Total SNMP
Subtitle: Exploring the Simple Network Management Protocol, 2/e
Authors: Sean Harnedy
Publisher: Prentice Hall
Publication date: July, 1997
Nth Printing:
ISBN: 0136469949
Pages: 672
Price: 55.00 US
WWW book information:
Book's examples:

Covers a variety of SNMP topics.  Tcl is just one of many tools mentioned
relating to the topic of managing networks.

54. Title: SGML CD, 1/e
Authors: Robert DuCharme
Publisher: Prentice Hall
Publication date: 1998
Nth Printing:
ISBN: 0134757408
Pages: 288
Price: 49.95 US
WWW book information:
Book's examples:

A collection of freeware and shareware tools for SGML users.

55. Title: Perl/Tk Pocket Reference
Authors: Steve Lidie
Publisher: O'Reilly & Associates
Publication date: October 1998
Nth Printing:
ISBN: 1565925173
Pages: 112
Price: 9.95 US
WWW book information: <URL:>
Book's examples:

Reference guide to the various Perl/Tk widgets.

56.  Title: Perl 5 Complete
Authors: Ed Peschko, Michele DeWolfe
Publisher: McGraw-Hill
Publication date: 1998
Nth Printing:
ISBN: 0079136982
Pages: 1083
Price: 49.95 US
WWW book information: <URL:>
Book's examples:

This softback book and CD-ROM covers many of the topics one needs to program
in Perl 5 under either Unix or Windows NT.  A variety of modules are covered,
and the final chapter covers programming a GUI spreadsheet in Perl/Tk.

57. Title: Learning Perl/Tk
Author: Nancy Walsh <URL:>
Publisher: O'Reilly & Associates
Publication date: January 1999
ISBN: 1565923146
Pages: 344
Price: 32.95 US
WWW book information: <URL:>
Errata: <URL:>

This book covers the standard widgets and geometry managers, covers event
driven programming, creating a composite widget, snippets of code, and a
number of complete program examples.  Designed to be read by a new 
Perl Tk programmer as well as to be used as a reference.

58. Title: Perl from the Ground Up
Authors: Michael McMillan
Publisher: Osborne
Publication date: June 1998
Nth Printing:
ISBN: 0078824044
Pages: 520
Price: 34.99 US
WWW book information: <URL:>
Book's examples:

Covers topics from where to get perl thru advanced development of
powerful database utility programs.  Has a smal section on creating user
interfaces with Perl/Tk.

59. Title: TCL/TK Pocket Reference
Author: Paul Raines
Publisher: O'Reilly & Associates
Publication date: October 1998
ISBN: 1565924983
Pages: 96
Price: 7.95 US
WWW book information: <URL:>

60. Title: Tcl/Tk in a Nutshell
Authors: Paul Raines, Jeff Tranter
Publisher: O'Reilly & Associates
Publication date: March, 1999
ISBN: 1565924339
Pages: 456
Price: 24.95 US
WWW book information: <URL:>
Book's examples:
Errata: <URL:>

61. Title: Handbook of Programming Languages, Volume 3
Subtitle: Little Languages and Tools
Editor: Peter H. Salus
Publisher: Macmillan Technical Publications
Publication date: 1998
ISBN: 1578700108
Pages: 685
Price: 50.00 US
WWW book information: <URL:>

Part of an extensive examination of programming languages, including a
chapter on Tcl by Cameron Laird.

62. Title: Tcl/Tk for Real Programmers
Author: Clif Flynt <URL:>
Publisher: Morgan Kaufmann Publishers
Publication date: December 1998
ISBN: 0122612051
Price: 45.95 US
WWW book information: <URL:>
Book's examples: <URL:>
Errata: <URL:>

This book is the complete resource for computer professionals from systems
analysts to programmers ready to code Tcl programs.  It covers Tcl 8.1 and
includes a CD-ROM containing the Tcl interpreter, libraries, as well as
some electronic tutorials to get started quickly.  It also includes some
electronic material including case studies and techniques for the advanced
user, plus examples from the book.  See <URL:>
for the softcopy of the Real World chapters from the book.

63. Title: Tcl/Tk Programmer's Reference
Author: Christopher Nelson <URL:>
Publisher: Osborne/McGraw-Hill
Publication date: October 1999
ISBN: 0072120045
Pages: 560
Price: 19.99
WWW book information: <URL:>
Book's examples: <URL:>
Errata: <URL:>

This book represents a more technical presentation of Tcl/Tk, adding
examples, notes, warnings and explanations to the material from the standard
man pages available in the source distribution.

64. Title: Tcl/Tk Unleashed
Authors: Red Hat Press
Publisher: Sams Publishing
Publication date: September 1997
ISBN: 0672311437
Pages: 1100
Price: 49.99 US
WWW book information: <URL:>

This is a paperback with CD-ROM.

65.  Title: [incr Tcl] from the Ground Up
Subtitle: The Accelerated Track for Professional Programmers
Author:  Chad Smith <URL:>
Publisher: Osborne McGraw-Hill
Publication date: December, 1999
ISBN: 0072121068
Pages: 600
Price: 27.95 US
WWW book information: <URL:>
Book's examples:

Complete reference manual for itcl, as well as covering OO design issues, etc.
Covers fundamentas, as well as advanced topics such as overloading, code
resuse, multiple inheritance, abstract base classes, performance issues.
Also covers itk and the 56 iwidgets.  This is a tutorial approach rather
than an encyclopedic approach to covering the material.

66.  Title: CGI Programming with Tcl
Authors: David Maggiano <URL:>
Publisher: Addison-Wesley
Publication date: December 1999
ISBN: 0201606291
Pages: 608
Price: 44.95 US
WWW book information:
Book's examples:

67. Title: Mobility Processes, Computers and Agents
Authors: Dejan Milojicic
	Frederick Douglis
	Richard Wheeler
Publisher: Addison-Wesley
Publication date: December 1999
ISBN: 0201379287
Pages: 704
WWW book information: <URL:>
Book's examples:

This book brings together a number of papers written by leading experts in
3 areas of mobility: process migration, mobile computer, and mobile agents.
Includes a description of Agent Tcl among other mobile agent programming

68.  Title: Network Management Tools
Authors: Steve Maxwell
Publisher: Computing McGraw-Hill
Publication date: March 1999
ISBN: 0079137822
Pages: 512
Price: 39.99 US
WWW book information: <URL:>
Book's examples:

Book and CDROM covering issues in designing your own network management tools,
making use of Expect, Scotty, and more.

69.  Title: UNIX Shell Programming Tools
Authors: David Medinets
Publisher: Computing McGraw-Hill
Publication date: February 1999
ISBN: 0079137903
Pages: 568
Price: 39.99 US
WWW book information: <URL:>
Book's examples:

Book and CDROM covering programming in bash, perl and tcl under Unix.

70.  Title: HP-UX Developer's Tool Kit
Authors: Kevin E. Leininger
Publisher: Computing McGraw-Hill
Publication date: August 1995
ISBN: 0079121756
Pages: 473
Price: 44.95 US
WWW book information: <URL:>
Book's examples:

Book covers tools for developing on HP-UX.  CD-ROM includes many common
tools, including Tcl.

71.  Title: Sams Teach Yourself Tcl/Tk in 24 Hours
Authors: Venkat V. S. S. Sastry, Lakshmi Sastry
Publisher: Sams
Publication date: November, 1999
ISBN: 0672317494
Pages: 494
Price: 24.99 US
WWW book information: <URL:>
Book's examples:

Paperback with CD-ROM which contains Tcl, Tk, various extensions, plus all

Intro to Tcl and Tk, covering 24 one hour lessons.

72. Title: The Complete TCL and TK Training Course, Student Edition
Authors: Brent B. Welch and Dave Zeltserman
Publisher: Prentice Hall
Publication date: August, 1998
ISBN: 0130830666
Pages: 630
Price: 71.93 US
WWW book information:
Book's examples:

73.  Title: Tcl for Web Nerds
Authors: Hal Abelson
	Philip Greenspun
	Lydia Sandon
Publisher: Arsdigita
Publication date: 2000
Nth Printing:
Price: 0 US
WWW book information: <URL:>
Book's examples:

A book written for MIT students taking a Web service design course, to teach
them the fundamentals of using Tcl.  Examples are in relationship to
Web programming, and make use of the Arsdigita toolset.

74.  Title: Linux Unleashed
Authors: Tim Parker
Publisher: Sams
Publication date: 1998
ISBN: 0672313723
Pages: 1114
WWW book information:
Book's examples:

Contains a section on Tcl.

75.  Title: Linux: The Complete Reference
Authors: Richard Petersen
Publisher: Osborne/McGraw-Hill
Publication date: 1998
ISBN: 0078824613
Pages: 1059
WWW book information:
Book's examples:

Contains a section on Tcl, Tk, and SpecTcl.

76.  Title: Java 2 Platform Unleashed
Authors: Jamie Jaworski
Publisher: Sams
Publication date: 1999
ISBN: 0672316315
Pages: 1424
WWW book information:
Book's examples:

Contains a Tcl primer, as well as sections on Jacl and Tcl Blend.

77.  Title: Dictionary of Networking
Authors: Peter Dyson
Publisher: Sybex
Publication date: 1999
ISBN: 0782124615
Pages: 448
WWW book information:
Book's examples:

78.  Title: Unicode: A Primer
Authors: Tony Graham
Publisher: M&T Books
Publication date: 2000
ISBN: 0764546252
Pages: 475
WWW book information:
Book's examples:

Tcl mentioned (perhaps more than a mention) under programming language support.

79.  Title: Exploring Oracle (2000)
Authors: Lisa Lenos (ed)
Publisher: Element K Press
Publication date: 2000
WWW book information:
Book's examples:

Section regarding use of Tcl with OEM as well as a reference in the designed
and change manager chapter.

80.  Title: The Practice of Programming
Authors: Brian W. Kernighan
	Rob Pike
Publisher: Addison-Wesley
Publication date: 1999
Nth Printing:
ISBN: 020161586X
Pages: 267
WWW book information: <URL:>
Book's examples:

This book focuses on programming issues in general, with code from a variety
of languages from C, C++, Java, as well as Tcl and a few other scriptings

81.  Title: Managing IMAP
Authors: Dianna Mullet
	Kevin Mullet
Publisher: O'Reilly
Publication date: 2000
Nth Printing:
ISBN: 059600012X
Pages: 405
Price: 34.95 US
WWW book information: <URL: >
Book's examples: <URL: >
Errata: <URL: >

Covers the concepts and practical experiences of IMAP.  The book
talks alot about the Cyrus IMAP server, which has Tcl embedded,
and includes an appendix covering Tcl.

82.  Title: Oracle & Open Source
Authors: Andy Duncan
	Sean Hull
Publisher: O'Reilly
Publication date: 2001
ISBN: 0596000189
Pages: 424
Price: 39.95 US
WWW book information: <URL: >
Book's examples:
Errata: <URL: >

Book covers Oratcl and Perl/Tk interfaces to Oracle.

83.  Title: Programming Ruby
Authors: David Thomas
	Andrew Hunt
Publisher: Addison-Wesley
Publication date: 2000
ISBN: 0201710897
Pages: 608
Price: 42.95 US
WWW book information: <URL: >
Book's examples: <URL: >
Errata: <URL: >

Covers Ruby/Tk, which is a derivative of Perl/Tk.

xx.  Title:
Publication date:
Nth Printing:
WWW book information:
Book's examples:

99. Rumored to be in the works

If you can confirm that any of these books are in any way relevant to
Tcl and exist I will move them on up to the list above.

A. International Thomson Publishing is producing a new
series of books called "The Road to ...".  One of these will be "The
Road to Tcl/Tk".  It will be a bit like a travel guide, covering the
essentials, hints and tips, with longer worked examples.  The author
will be passing on the experience gained while writing Tcl/Tk.  It will
be asssuming Tcl 8.0.

B. Title: Computer Vision and Image Processing
Subtitle: A Practical Approach Using CVIPTools (BK/CD-ROM), 1/e
Authors: Scott E. Umbaugh
Publisher: Prentice Hall
Publication date:
Nth Printing:
ISBN: 0132645998
WWW book information:
Book's examples:

Covers the general topic of image processing, and the specifics of using
the CVIP Tools, which include a Tcl shell which has access to all the
computer vision image processing tools (which of course are on the CD-ROM).

C. Python/Tk book

A book that discusses the Python/Tk environment, how to use it to
create useful software, doing rapid application development with Python/Tk
and other useful libraries, and finally a series of graphically oriented
applications is in process.  Watch
<URL:> for future details.

D. Title: Porting to Java
Author: New Riders Development Group
Publication date: January 1996
ISBN: 1562056026
Price: 45.00 US
WWW book information:

The book includes applet converter scripts and covers Tcl/Tk, C,
C shell and Perl conversion techniques. It explains usage for each
Java class distributed by SUN in the Java Developer's Toolkit.
I can't find any specifics on whether this actually was published or not.

E. Title: Tcl
Author: Kelvin Corocran
Publisher: Small Press Distribution
Publication date: December 1989
ISBN: 1852980109
Price: 8.00 US
WWW book information:

No other information available.

F. Title: Tcl and the Tk Toolkit
Author: John K. Ousterhout
Publisher: Specialized Systems Consultants
Publication date: December 1996
ISBN: 9997887492
WWW book information:

No other information available.  This may be some sort of deal where
John's book was bundled with a reference card or CD-ROM.

G. Title: Advanced Programming Language Design
Publisher: Addison-Wesley Professional Computing Series
Author: Raphael Finkel
Publication date:
ISBN: 0805311912
WWW book information: <URL:>

Tcl is mentioned once in the Table of Contents under the subject:
Homoiconic Use of Strings.

H. Title: Perl 5 How-To
Authors: Aidan Humphreys, Mike Glover, Ed Weiss
Publisher: Waite Group
Publication date: June 1996
ISBN: 1571690581
Price: 49.99 US
WWW book information:

Contains a chapter on perl/Tk programming.

I. Title: Perl 5 Interactive Course
Author: Jon Orwant
Publisher: Waite Group
Publication date: September 1996
ISBN: 1571690646
Price: 49.99 US
WWW book information:

Said to include a chapter on perl Tk.

J. Title: C++ and C Tools, Utilities, Libraries and Resources, 1/e
Author: David Spuler
Publisher: Prentice Hall

This book covers a variety of tools for developing in C++ and C.  In
a page written about the book, thanks is given to one person for helping
with TCL tips.  Until I see the book or hear from someone who has
seen it, I have no idea if Tcl is really covered in the book much though.

K. Title: Itinerant Agents: Explanations and Examples with CD-ROM
Publisher: Manning Publishing
Publication date: 1996
Nth Printing:
WWW book information: <URL:>
Book's examples:

This book supposedly covers roaming software agents and uses Agent Tcl
as one of the languages.  More details are needed.

L. Title: Graphical Application Development in Perl/Tk
Authors: Charlie Stross
Publisher: Addison-Wesley
Publication date: late 1998
Nth Printing:
WWW book information: <URL:>
Book's examples:

Author is writing a book on using perl/Tk.

M. A number of other Linux related books mention Tcl at
least in passing.   See for instance
Running Linux <URL:> or
LINUX System Administration Handbook 1/e from 1998.
I've also seen other non-Linux specific books on topics such as web site
administration which mention Tcl in passing.  While the descriptions of
such books mention Tcl, typically, the coverage appears so small that I have
not bothered to add them to this list at this time.
A recent book mentioned is the Linux Programmer's Reference, by
Richard Petersen <URL:>.
It covers the various languages available on Linux and includes a
quick reference for tcl and tk.
Linux in a Nutshell is another of these books.

N. Title: Linux Programming in Tcl/Tk
Author: Rildo Pragana <URL:>

This book will be published in Portuguese.  See
<URL:> for information.

O. Title: Philip and Alex's Guide to Web Publishing
Author: Philip Greenspun
Publisher: Morgan Kaufmann
Publication date: December 1998
WWW book information: <URL:>

This book supercedes Database Backed Web Sites.  The book is 50%
longer, will have color photos, and covers more up to date topics.
Tcl still is featured as one of the major web programming languages.
Some readers may be offended by the arguments for Tcl though...

P. Title: Tcl/Tk Tools, Second Edition
Publisher: O'Reilly & Associates
Publication date:
WWW book information:
Book's examples:

Rumor has it that a second edition of this book is being considered.

S. Designing the User Interface, Third Editions
Subtitle: Strategies for Effective Human-Computer Interaction
Publisher: Addison-Wesley Professional Computing Series
Author: Ben Shneiderman
Publication date: 1997
ISBN: 0201694972
Pages: 600
WWW book information: <URL:>

Associated with this book is a course syllabus (Cpsc 481: Human Computer
Interaction, The University of Calgary) in which Tcl books are
recommended reading for the course.  Some Tcl/Tk code is also referenced
in one of the chapters referenced online (Chapter 5-3).  I've not
had a chance to look at the book myself.

T. Title: C Interfaces and Implementations
Subtitle: Techniques for Creating Reusable Software
Publisher: Addison-Wesley Professional Computing Series
Author: David R. Hanson
Publication date:
ISBN: 0201498413
WWW book information: <URL:>

Again, there are references to Tcl in the description associated with
the book, but I haven't seen the book itself to see if Tcl is used there.

U. Advanced Perl/TK Programming
Author: Albert Lilley
Publication date: 2000

V. Programming Perl/TK
Author: Andrew E. Page
Publication date: 2000

W. More Practical Programming in Tcl/Tk
Author: Kevin B. Kenny
Publisher: Prentice Hall
ISBN: 013081251X

Appears this one has been cancelled

X. PERL 5 Developer's Guide
Author: Edward S. Peschko and Michele DeWolfe
ISBN: 0079136982
Publisher: Computing McGraw-Hill
Publication date: 1998
Pages: 1062

Covers Perl/Tk.

Other documentation includes:

1. Many people learn Tcl/Tk from reading the 'man' pages.  These files,
a part of the source code distribution, are mentioned in Dr. Ousterhout's
book as 'the reference manual'.  If the person who installed Tcl/Tk at
your site did a build of the executables and then ran the 'make install'
step described in the source code distribution, the man pages are probably
installed on your system in a directory.  Contact your system adminstrator
for more details.  Also, (see "part2") for a number of WWW resources
which provide additional information about many aspects of Tcl and its
extensions.  See the other FAQs mentioned in this document for additional
help, pointers to software examples, and other resources from which you
can draw help.  For instance, (see "bibliography/part1") for details
of published books, magazine and journal articles, proceedings papers, and
thesises relating to the Tcl family of languages.
See <URL:> for details of classes
offered commercially.

2. For a list of free resources, (see "part3") which has an
entry for a variety of resources.

3. Computerized Processes Unlimited has a combined Tcl/Tclx reference
manual for sale.  See <URL:> for
more information.

4. The USENIX Association <URL:> not only
sponsors various conferences and workshops of possible interest to the
Tcl and Tk communities, but also offers the proceedings from those
sessions for sale to members.  See
<URL:> for
an example of just some of the articles that have been published by the
USENIX Association.

5. Title: Tcl/Tk Documents
Author: J. Ousterhout
Publisher: Northside Copy Central
	1862 Euclid
	Berkeley, CA
Voice: (510) 849-9600
Price: approx. $15-$20 US
WWW book information:

6. Title: Tcl/Tk Reference
Author: J. Ousterhout 
Publisher: Cheap Bytes
	P.O. Box 2714
	Lodi, CA 95241
Pages: 700
Price: 19.00 US
WWW book information: <URL:>

This contains the complete man pages for Tcl 7.4/Tk 4.0, along with two indexes.

7. Title: TCL/TK
Author: Na
Publisher: Walnut Creek
Publication date: December 1994
ISBN: 1571760237
Price: 39.95 US
WWW book information:

Book store catalog description only says this is a hardcover, but I suspect
it is really a copy of Ousterhout's book with a CD-ROM.

8. The Perl Journal
ISBN: 1087903X
Price: 18.00 US/year for U.S. delivery
	25.00 US/year for foreign delivery,
WWW book information: <URL:>

The Perl Journal is a quarterly publication devoted to discussing the
Perl language and extensions.  A regular column on the perl Tk
extension has been appearing and is an excellent source of information
about the extension.

9. Title: Distributed objects : neural network architecture rendered in
	Tcl-DP and Tcl widgets
Author: Mark A. Stewart
Publisher: Thesis (M.S.) University of Alabam at Birmingham
Publication date: June 1995
LoC: QA76.27.T41
WWW book information:

The topic is computer network architectures and neural networks.

10. Title: Thinking in Java
Author: Bruce Eckel
Publisher: Prentice-Hall
Publication date: 1998
WWW book information: <URL:>

In the first chapter, compares Tcl to JavaScript and VBscript.

11. Title: The Quick Python Book
Authors: Ken McDonald <URL:>
Publication date:
Nth Printing:
WWW book information:
Book's examples:

Will contain a chapter on the use of Tk with Python.

12.  Title: Tcl/Tk Tutorial Scripting
Authors: Gerald Lester
Publisher: Addison-Wesley Publishing
Publication date: July, 2000
ISBN: 0201379325
Price: 40.00 US
WWW book information:
Book's examples:

13.  Title: Perl 5 Unleashed
Subtitle: OOP, Sockets, Perl/Tk, IPC, 32-Bit Windows
Authors: Chip Salzenberg
Publisher: Sams
Publication date: October, 1996
Nth Printing: Out of Print
Pages: 798
Price: 39.95 US
WWW book information:
Book's examples:

14. Title: Introduction to Tkinter
Authors: Fredrik Lundh
Publication date: March, 2000
Pages: 2000
Price: Free
WWW book information: <URL:>
Book's examples:

This book only available in electronic form.  It provides a brief introduction
to the Tkinter user interface library.


15.  Title: PerlMonth
WWW book information: <URL:>

Monthly web magazine which convers perl/Tk along with many other Perl

16.  Title: TCL and Expect Programming Made Easy
Authors: Shastri Murali
Publisher: by author
Publication date: 10/1999
ISBN: EB00003158
Pages: 150
Price: $30.00 US
WWW book information:
Book's examples:

Published in PDF format as eMatter.  Readers available initially for Windows
with plans during the year 2000 for MacOS and Linux readers.

Book takes a cookbook approach to programming in Tcl.

17.  Title: Python and Tkinter Programming
Authors: John E. Grayson
Publisher: Manning Publications Company
Publication date: February 2000
ISBN: 1884777813
Pages: 660
Price: 49.95 US
WWW book information: <URL:>
Book's examples:

This book is intended for Python programmers who need to develop GUI driven
applications.  The examples should be portable between Windows and Unix.
The author states that the examples are larger useful applications rather
than smaller code fragments.  Other Python extensions are covered as well,
so the reader is given an idea of how to use Python to develop more
realistic applications.  The author expects to cover complex controls,
photo-realistic panels, browser/notebook/wizard/image map interfaces,
servers and CORBA, and more.  Tkinter is fullly documented.

18.  Title: Perl/Tk Programming
Authors: Andrew L. Johnson
	Randy Kobes
Publisher: Manning Publications Company
Publication date: January 2001
ISBN: 1884777937
Pages: 400
Price: 39.95 US
WWW book information:
Book's examples:

xx.  Title:
Publication date:
Nth Printing:
WWW book information:
Book's examples:


B. Training courses, etc.

1. See <URL:> for information about
training courses by Computerized Processes Unlimited, NeoSoft Communications
Services, and ATT training groups.

2. The first Tcl local users' group has formed in the Dallas Texas
area.  The group will be known as "Tcl Dallas" or "Tcl'D" for short.
"Tcl Dallas" is a non-profit organization dedicated to the promotion of
the Tcl language along with its many extensions.  As a local users
group, "Tcl Dallas" supports the regional Tcl developer community by
hosting special events and providing a local forum for the discussion
of Tcl issues.  For further information, see their WWW page at
<URL:> (???).

3. An IRC channel dedicated to the discussion of Tcl/Tk has been created.
#TCL has been created by Noob Saibot <URL:>.

4. A Tcl user group is being considered in the Raleigh, North Carolina
area.  It is to be called the Triangle Area Tcl/Tk User Group (TTUG).
Krishna Vedati <URL:> is the person who
is interested in forming this.  Contact Krishna for more details.

5. The Tcl/Tk Journal is a free WWW based publication (ezine) which appears
to be starting up in January, 1999.  See <URL:>
or <URL:>
for the ezine, its guidelines for contributions, etc.  PLEASE, consider
submitting articles to the editor!  There is also a mailing list for
discussion of the magazine available at
<URL: >.

6. A Silicon Valley Tcl Users Group has been created.
This is organized similar to one night conferences
Contact Jeffrey Hobbs <URL: mailto:jeff at> to express
interest and to get more information.

7. The Second European Tcl/Tk Conference
<URL: > takes place June 7-8, 2001.
Contact Carsten Zerbst <URL:>.


C.  Time-related seminars, conferences, workshops.

1. There have been, in the past, seminars and BOFs/SIGs at Usenix
and other conferences taught by John Ousterhout and others on Tcl and Tk.
See <URL:> for their current schedule of events.
(See also "part2") for the URL to the slides from the most recent
of these presentations by John.

2. University of Maryland Baltimore County has been held a
course titled CMSC491C - Special Topics in Computer Science -
Scripting Languages.
This was an introduction to scripting languages with an emphasis on Perl and
Tcl, but also mentioning sed, awk, etc.  Taught by Bob Tarr.
Call (410) 455-2336 (Continuing Education Department) to sign up
as a special non-degree candidate.
Info provided by <URL:> (Tim Finin).

4. See <URL:> or send mail to
<URL:> for details of training conducted by CPU.

5. See <URL:> for details on training from 
Karl Lehenbauer, one of the co-creators of one of the Tcl/Unix user's favorite
extensions - Extended Tcl (TclX)!

6. See <URL:> for information regarding Clif Flynt's
availability to provide Tcl training - either introductory or custom

7. The International Linux Conference and Exposition (LINC)
<URL:> is looking for presentations
on many areas, including Tcl.  Keep an eye on this web site
to see whether there will be sessions of interest to the Tcl or Tk

8. Beginning January 11, 2000, there was an "Introduction to Tcl/Tk"
course offered through UCLA Extension <URL:>.
I'm uncertain whether or not this continues to be offered.

9. Avia Training and Consulting provides various public training classes
covering Tcl related topics.  For more information on the various classes
offered, the locations for the classes, etc. see
<URL:> .
Courses cost $500 US dollars per day per student.  Avia also offers onsite
private training.
Contact Ken Jones <URL:> or call
866-TCL-HELP (866-825-4357) in the USA or +1-408-983-1199 outside the USA.
Prior to founding Avia, Ken was one of the instructors at Ajuba Solutions.

If you are planning on attending any sort of conference or workshop,
check for relevant types of classes, talks, presentations, as well as
sessions dealing with applications and extensions of Tcl or Tk.  Let the
others in <URL: news:comp.lang.tcl> know about the event so that they
might also attend.  For that matter, consider scheduling a Tcl/Tk event
yourself if you are so inclined!


From: FAQ General information
Subject: -VI- Where do I report problems, bugs, or enhancements

	There are two alternatives for reporting bugs and problems.
The first is the Usenet news group <URL: news:comp.lang.tcl>, an
unmoderated Usenet newsgroup, created for the discussion of the Tcl
programming language and tools that use some form of Tcl, such as the
Tk toolkit for the X window system, Extended Tcl, and expect.  Please
note that postings of source code to <URL: news:comp.lang.tcl> does not
automatically get archived anywhere (for example in
<URL:> - the User Contributions
archive site) - if you want your code to
be available, you can take advantage of the <URL:>
interface and add it yourself.  See elsewhere in the FAQs for more details on
the user contributed source code archive site.

	The second alternative would be to report problems, suggestions, new
ideas, etc. directly to the author.  To find the email address of
the authors of Tcl/Tk based programs and extensions, (see "part4") and
(see "part5").  Note that this does NOT apply to Tcl / Tk themselves
- John has asked that you use <URL: news:comp.lang.tcl> for public
There is also <URL:> for reporting
problems, suggesting improvements, and so on.

	When you report bugs, be sure you mention what hardware and
operating system you are using (e.g. Pentium 100 mhz running Linux
version x.y.z), what version of Tcl/Tk you are using (e.g. Tcl/Tk
8.3.2), what extensions you have added (e.g. tclX, dash,
plus, itcl, tix, and blt), and any local modifications you have made.
Then, provide if possible either a small piece of code, or a URL
(e.g. <URL:> ) to some code
which demonstrates the problem.  Either have the code explicitly mention
"here's what I thought would happen", or in your description mention that.
Also, if something used to work, mention which configuration you used.
Most of all, be sure to provide an email address that is valid, and be
sure to watch the Usenet newsgroups for responses, since seldom will
private email be sent on a matter which likely is of public interest.
On the other hand, if you DO get private email replies, remember to post a
summary of what works to the group, so that future generations can benefit
from your learning experience.	If something in Tcl fails, don't just
say "Tcl_Eval() fails" (or whatever function) but tell readers specifically
what type of core dump occured, or what error codes were returned, what
values were left in $errorCode and interp->result, and so on.  If you submit
information about your platform, version of Tcl, and code which can easily
duplicate the bug to <URL:>,
it can be examined, verified, logged and possibly fixed
in a future Tcl/Tk release.  If you have devised a fix (commonly referred
to as a patch) for any Tcl or Tk related software, be sure to notify
the author of the software as well as <URL: news:comp.lang.tcl>.
To report patches to the core Tcl and Tk software, access

	If you have software from which you think someone might benefit
(either a program, function, extension, or simple example), or you have
a document, magazine or journal article, thesis, project, or even
commercial advertisement, be sure to let the appropriate people know.
There are FAQ maintainers for each of these areas as well as a
<URL: news:comp.lang.tcl.announce> newsgroup you can use.  Source code
postings of reasonable length (and reasonable has been pretty large)
are acceptable, BUT postings are _not_ automatically archived on the
Neosoft ftp site.  It is always worthwhile to submit your contributions
directly to the ftp site so more members in the future can benefit from your
experience.  To make announcements to the <URL: news:comp.lang.tcl.announce>
newsgroup, send email with the details to
<URL:>.  Also, feel free to just point us
to your own ftp site or WWW site if you have one which can be used.  Don't
feel compelled to keep everything on one site - but feel free to ftp
contributions there if you wish.


End of comp.lang.tcl Frequently Asked Questions (1/5)
Never apply a Star Trek solution to a Babylon 5 problem.
Larry W. Virden <> <URL:>
Even if explicitly stated to the contrary, nothing in this posting should 
be construed as representing my employer's opinions.

[[Send Tcl/Tk announcements to
  Send administrivia to
  Announcements archived at
  The primary Tcl/Tk archive is ]]

Inferno Solutions
Hosting by

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру