Part1 - Part2 - Part3 - Part4 - Part5

comp.lang.tcl Frequently Asked Questions (June 27, 1997) (1/5)

From: lvirden@cas.org (Larry W. Virden)
Newsgroups: comp.lang.tcl.announce,comp.lang.tcl,comp.lang.perl.tk,comp.answers,news.answers
Subject: comp.lang.tcl Frequently Asked Questions (June 27, 1997) (1/5)
Followup-To: comp.lang.tcl
Date: 29 Jun 1997 03:56:15 -0700
Organization: The Tcl/Tk FAQ Group
Sender: mitchellorg@non.non.net
Expires: 1 Aug 97 23:59:00 GMT
Message-ID: <pgpmoose.199706290355.12724@non.non.net>
Reply-To: lvirden@cas.org (Larry W. Virden)
Summary: A regular posting of the comp.lang.tcl Frequently Asked Questions
	(FAQ) and their answers.  This is the first of five parts.
	This part introduces Tcl and Tk and discusses documentation, etc.
Keywords: tcl, extended tcl, tk, expect
X-Original-Sender: lvirden@cas.org
X-Url: http://www.teraform.com/%7Elvirden/tcl-faq/part1.html
Archive-name: tcl-faq/part1
X-Auth: PGPMoose V1.1 PGP comp.lang.tcl.announce
	iQCVAwUBM7Y/O8VCYQpvzJ9ZAQG6bgQAyUPeb9RZ1jffLku9A0e2ofG+BZsTZf4+
	fkd3//zjB3YmMR6b725grmcsZT7m1NUdfKF1xjq7Qf2vPQe1SpWjJC8QN6kGKV9j
	RCTuxfqL/3ksO9g3ZN81tRNUEVpJPuIyOVOUKDcDxGTGrCU5f4kSBw7w8DvfI6Ki
	xZ/JSMsGqAA=
	=1OYS

Posting-Frequency: monthly
Last-modified: June 27, 1997
Version: 8.003
URL: http://www.teraform.com/%7Elvirden/tcl-faq/part1.html
Comp-lang-tcl-archive-name: tcl-faq.part01

	For more information concerning Tcl (see "tcl-faq/part2"),
(see "tcl-faq/part3"), (see "tcl-faq/part4"), or (see "tcl-faq/part5").
Also (see "tcl-faq/commercial-uses/part1"),
(see "tcl-faq/bibliography/part1"), (see "tcl-faq/usage"),
or (see "tcl-faq/windows").

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
	D. VMS
	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 manners, but these
communities of users are what is known as USENET newsgroups.  While
Dr.  John Ousterhout 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'.  Another newsgroup which you might
encounter Tcl discussion is <URL:news:alt.comp.tkdesk>, where discussions
about the Tk application TkDesk may take place.  Discussion about SCO's
vtcl (a graphical interface extension based on the Motif library) can be
found on <URL:news:comp.unix.sco.programmer>.  And of course, discussions of
ports of Tcl/Tk/other Tcl-based extensions and programs can be found on
the appropriate OS related newsgroups.

	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> and German
<URL:news:de.comp.lang.tcl> equivalents of <URL:news:comp.lang.tcl>.

	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.

	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:http://www.teraform.com/%7Elvirden/tcl-faq/> or
<URL:ftp://ftp.neosoft.com/pub/tcl/sorted/info/faq/tcl-faq.part01.gz>
<URL:ftp://ftp.neosoft.com/pub/tcl/sorted/info/faq/tcl-faq.part02.gz>,
<URL:ftp://ftp.neosoft.com/pub/tcl/sorted/info/faq/tcl-faq.part03.gz>,
<URL:ftp://ftp.neosoft.com/pub/tcl/sorted/info/faq/tcl-faq.part04.gz>,
<URL:ftp://ftp.neosoft.com/pub/tcl/sorted/info/faq/tcl-faq.part05.gz>.

	The primary location for the commercial use of Tcl FAQ is
<URL:ftp://ftp.neosoft.com/pub/tcl/sorted/info/faq/tcl-commercial-faq.gz> as well
as <URL:http://www.cpu.com/cpu/tclcom1.htm>.
The author is <URL:mailto:gwl@cpu.com> (Gerald W. Lester).  This FAQ
contains information either about commercial products which incorporate
Tcl as a part of them, firms which teach classes about Tcl and Tk in some
manner, and other commercial ventures.  Please be sure to contact
the maintainer for all relevant material about _your_ product!

	A bibliography of published material
related to Tcl will be managed by <URL:mailto:glv@utdallas.edu>
(Glenn Vanderburg).  (See "tcl-faq/bibliography/part1") or ftp it at
<URL:ftp://ftp.neosoft.com/pub/tcl/sorted/info/faq/tcl-faq-bib.gz>.

	The second FAQ contains a series of Tcl-related questions
and answers and is managed by <URL:mailto:jmoss@ichips.intel.com> (Joe Moss).
(See "tcl-faq/usage"), <URL:http://psg.com/%7Ejoem/tcl/faq.html> or find it at
<URL:ftp://ftp.neosoft.com/pub/tcl/sorted/info/faq/tcl-faq-usage.gz>.

	The third contains Tk-related questions and answers and
is managed by <URL:mailto:jeff.hobbs@acm.org> (Jeffrey Hobbs).  You can
find it at <URL:http://www.cs.uoregon.edu/research/tcl/faqs/tk/>.

	Cameron Laird has made available his personal notes on mistakes
frequently made by newcomers to Tcl at
<URL:http://starbase.neosoft.com/%7Eclaird/comp.lang.tcl/fmm.html> and will
update it as time permits.

	FAQs are also available for the Windows port of Tcl
<URL:http://www.pconline.com/%7Eerc/tclwin.htm>
and perl/Tk <URL:http://w4.lns.cornell.edu/%7Epvhp/ptk/ptkFAQ.html>.

	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:mailto:lvirden@cas.org>.

------------------------------

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

o Highlights of Tcl based languages

	Tcl and Tk originated with Dr. John Ousterhout (OH'-stir-howt)
from 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:mailto:js@aelfric.bu.edu> Jay Sekora:

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

	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.

	Tcl (current release version 7.6p2) stands for ``tool command
language'' and is pronounced ``tickle.'' The home download site for
the Tcl source code is <URL:http://sunscript.sun.com/TclTkCore/>.
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.

	For a white paper written by Dr. Ousterhout discussing
scripting languages, and Tcl in particular, see
<URL:http://www.sunlabs.com/%7Eouster/scripting.html>.

	Tk (current release 4.2p2) 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:http://sunscript.sun.com/TclTkCore/>.

	Tcl/Tk 8.0b1 has been made available as an _beta_ release.
Users of this version should be prepared for problems
to be present.  See <URL:http://sunscript.sun.com/TclTkCore/8.0.files.html>
for Tcl/Tk 8.0's release plans.

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.

<URL:http://www.sunlabs.com/people/john.ousterhout/> and
<URL:http://sunscript.sun.com/> are available for more details about Tcl.

	Tcl 8.0 plans can be found at
<URL:http://sunscript.sun.com/TclTkCore/8.0.files.html> as well as
other places.

	Note that one frequently asked question is whether Tcl/Tk
can handle Japanese, Chinese, Korean, .... language fonts.  As of 8.0, it
cannot not, as distributed by Sun.  However, as of Jun. 1997, it was
the intention of the Sun team to provide full Unicode support in Tcl 8.1.

John has given me permission to add this quote as well:

>From: ouster@tcl.eng.sun.com (John Ousterhout)
>Newsgroups: comp.lang.tcl
>Subject: Re: The future of TcL/Tk's Copyright Terms
>Date: 31 Aug 1994 20:08:19 GMT
>Organization: Sun Microsystems, Inc.
>Message-ID: <342nvj$6e9@engnews2.Eng.Sun.COM>

> I discussed the status of the Tcl and Tk libraries with people at Sun
> as part of my pre-hire negotiations, and we're in agreement that they
> will remain free and unrestricted just as they have always been.  Future
> enhancements made to Tcl and Tk by my group at Sun, including the ports
> to Macs and PCs, will be made freely available to anyone to use for
> any purpose.  My view, and that of the people I report to at Sun, is
> that it wouldn't work for Sun to try to take Tcl and Tk proprietary
> anyway: someone (probably me, in a new job) would just pick up the
> last free release and start an independent development path.  This
> would be a terrible thing for everyone since it would result in
> incompatible versions.

> Of course, Sun does need to make money from the work of my team or else
> they won't be able to continue to support us.  Our current plan is to
> charge for development tools and interesting extensions and applications.
> Balancing the public and the profitable will be an ongoing challenge for
> us, but it is very important both to me and to Sun to keep the support
> of the existing Tcl community.  I imagine this discussion will repeat
> from time to time over the next few years, but I think we can make things
> work out well for everyone.

	See <URL:http://www.utdallas.edu/acc/glv/Tcl/usenix95-bof.html> for
more details.

	John also has asked me to mention the following:
> there are now pages containing release notes.  The best thing is just to
> refer people to my home page, which is:

>     <URL:http://www.sunlabs.com/people/john.ousterhout/>
>     <URL:http://www.sunlabs.com/research/%7Eouster/>
>     <URL:http://sunscript.sun.com/>

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

	Jacob Levy <URL:mailto:jyl@tcl-tk.com>, Sun Tcl team member, stated
in mid August, 1996 that
> "[Tcl 7.6 is] scheduled to appear for beta testing shortly (no definite
> date yet, sorry).  The Tcl plug-in is based on Tcl 7.6plug, which is the
> version after that, and then we'll have Tcl 7.7.  The bytecode compiler
> is scheduled to appear in Tcl 8.0 which is the version after Tcl 7.7."

In the time since that message appeared, Tcl 7.6 was formally released.

	A "Tcl-Powered" logo is now available for licensing from Sun.
Contact <URL:mailto:jay.backstrand@Sun.COM> (Jay Backstrand) with your
FAX number and a copy of the license will be faxed to you as soon as
possible.  Once the license is signed and faxed back, the logo will be
sent to you for inclusion on your web pages or products.

	Finally, during April and May of 1997, the Sun research group
responsible for Tcl development were spun off into a new business group.
Here are a few questions and answers about the status of Sun, Tcl,
and the new business group, as things stood during early May, 1997.

>From: John Ousterhout <ouster@tcl.Eng.Sun.COM>
Newsgroups: comp.lang.tcl.announce
Subject: SunScript FAQ
Date: 6 May 1997 17:11:22 -0700

Q. Exactly what is the status of SunScript within Sun?
 
A. We are spinning out of Sun Laboratories into a relatively self-contained
   unit with our own marketing and sales units.  We will officially be
   in the CTO (Chief Technology Officer) organization within Sun, which
   was headed by Eric Schmidt until he left for Novell in April.  This
   is the place where many new businesses are incubated in Sun (for
   example, JavaSoft started here).  Sun Laboratories is also part of
   the CTO organization.
 
Q. How big is SunScript?
 
A. We will grow to 25 (from our previous Sun Labs headcount of 12) as
   quickly as possible.  We're already about half way there and we've
   filled most of our technical slots.  The key positions still to be
   filled are General Manager and Director of Engineering.  If you know
   good people for these slots, send them our way.
 
Q. What is the new structure of the Tcl-related Web and FTP sites at
   Sun?
 
A. Our new Web home is at http://sunscript.sun.com but we will continue
   to use ftp://ftp.sunlabs.com/pub/tcl as our FTP location for the
   forseeable future.  The old Web pages at http://www.sunlabs.com/tcl
   will stay around for a while, but the main page will refer people
   to the new SunScript server.
 
Q. Will email addresses for the SunScript team members be changing?
 
A. No.  All of us will retain our existing addresses, such as
   john.ousterhout@eng.sun.com.
 
Q. Is the name of the language changing from Tcl to SunScript?
 
A. No: SunScript is just the name of the business group within Sun.  The
   plan, as always, is to keep the core Tcl and Tk facilities free and
   open;  I think it would be a bad idea to use a name for them that
   appears to tie them to any particular vendor.  It's not yet clear
   what any of our products will be named.
 


	Extended Tcl (tclX) (Version 7.6.0) - This 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:ftp://ftp.neosoft.com/pub/tcl/sorted/distrib/tclx/>.  Extended Tcl
is oriented towards system programming tasks, with many additional
interfaces to the Unix operating system along with other useful
utilities.

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


o General information about Tcl and Tk by <URL:mailto:glv@utdallas.edu>
	(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 has moved from Berkeley to Sun Microsystems, where his
group is pursuing 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.


One question that is becoming common is whether Tcl/Tk/etc. is Year
2000 compliant.  Older versions of Tcl (pre 7.5) have no clock specific
commands, and so have no Year 2000 problems.  It is recommended that
users of Tcl 7.5 or newer upgrade to at least Tcl 7.6p2, where the Tcl
clock command has been patched to get around known problems surrounding
Year 2000 issues.  However, this does not imply that Tcl some how
prevents the user from being able to write software that will break in
the Year 2000 - only that Tcl and Tk as distributed from 7.6p2/4.2p2 on
has addressed all reported Year 2000 issues.

------------------------------

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


A. Unix

	Tcl runs on Sun 3s and 4s 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, and Linux have Tcl ported.  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 to run fine on IBM RS6000 under AIX 3.x as well as
IBM ES/9000 and AIX/ESA.  There were few problems getting it running
under Mt. Xinu Mach.  It also has been ported to Encore 91's running
UMAX V (an 88k based System V with BSD extension Unix).  It also runs
on 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 port to a Convex 3220 and 3880 was also reported.
Folks have compiled Tcl/Tk/BLT/itcl to 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.  The autoconfig did most of the work.
That particular user had not ported Tk to this environment yet.
Tcl also runs on Supermax Motorola/MIPS based multiprocessors
under SMOS.

	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
OSF/1.

	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 "tcl-faq/part4").


B. MacOS

	(See "tcl-faq/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.  Learn
more about this from reading
<URL:http://sunscript.sun.com/mac/mactcl-project.html>

	Also (see "tcl-faq/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.  See
<URL:http://sunscript.sun.com/win/wintcl-project.html> for the details.

	Steve Furr <URL:mailto:furr@qnx.com> 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
CD.

	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:mailto:wwb@wwa.com> (Bud Bach).
Andreas Stuebinger <URL:mailto:stuebing@infosun.fmi.uni-passau.de>
also has done an OS/2 port of Tcl (version unknown).  Tcl 7.4 has been
ported to OS/2 by Stefano Fornari <URL:mailto:fornari@ipvvis.unipv.it>
It is available at <URL:ftp://ftp.leo.org/pub/comp/os/os2/devtools/languages/>.

	Illya Vaes <URL:mailto:ivaes@hr.ns.nl> is working on a port of
Tk 4.1 (the Win32 version) to OS/2 Presentation Manager.  He is using the
native PM/GPI calls and should be able to support OS/2 2.x.  It is reported
that Ilya Zakharevich <URL:mailto:ilya@math.ohio-state.edu> 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.

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


D. VMS

	A port of Tcl 7.3 and Tk 3.6 to VMS was done by Angel Li
<URL:mailto:angel@flipper.rsmas.miami.edu>.  The files are at
<URL:ftp://mango.rsmas.miami.edu/pub/VMS-tcl/tcl73-tk36-itcl13.tar.Z>
and were compressed with the Unix compress command.  The pathname may
be subject to change as I have seen notes from Angel Li mentioning that
BLT 1.6 and the photo widget have also been ported.  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:mailto:wolfgang@pr-wiesbaden.de> and Till Imanuel Panzschke.  Contact them
directly for assistance.

	A port of most of Tcl 6.7 and Tk 3.2 was done by John Kimball
<URL:mailto:jkimball@src.honeywell.com> to VMS 5.5.  The files are on
<URL:ftp://src.honeywell.com/pub/tcl67-tk32-on-vms55.tar.Z>.

	A port of Tcl 7.0 and Tk 3.3 has being done to VMS on the
VAX and Alpha.  These are available as:
<URL:ftp://src.honeywell.com/pub/vms-tcl/tcl70-tk33-on-vms55.tar.Z>
or
<URL:ftp://src.honeywell.com/pub/tcl70-tk33-on-vms55.tar.Z>.

	Gerald W. Lester <URL:mailto:gwlester@cpu.com> 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.
<URL:ftp://ftp.neosoft.com/pub/tcl/sorted/distrib/vms-sharable-binaries.tar.gz>
is a version of Tcl/Tk for VMS built as a sharable library.  It
includes a dynamic module loading command.  Otherwise, it matches the
src.honeywell.com version.

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


E. AmigaDOS

	Karl Lehbauer <URL:mailto:karl@sugar.NeoSoft.com> 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:mailto:tsarna@endicor.com> 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:mailto:colas@opossum.inria.fr>
(Colas Nahaboo), mentioned that using Amiga gcc and the PD X server DaggeX
and Xlibs that a port of Tk might be possible.

	<URL:mailto:hnm@hermes.bouw.tno.nl> (Marco van der Heiden) has
completed a port to the Amiga, and suggests Amiga developers contact him
by email.

	<URL:mailto:wulf@hotdog.ping.de> (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
<URL:ftp://ftp.cso.uiuc.edu/>.

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


F. NeXT

	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:mailto:lvirden@cas.org> and I can add pointers here to you.


G. Other

	A port to the Apple IIgs and GNO 1.1/GSOS environment is underway.

	A beta port of Tcl 7 has been done to VxWorks.
	You can find it at
<URL:ftp://thor.atd.ucar.edu/pub/vx/tclvx7.0.v2.tar.gz> or a name
similar (if updates have occurred).

	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:mailto:kt@keihh.hanse.de> Kei Thomasen.  A different port of
Tcl/Tk to OS-9 was done by <URL:mailto:oertel@port.de> Heinz-Juergen Oertel.

	An alpha port of Tcl 7.5 has been done to BeOS Dr7 by
Jinwoo Shin <URL:mailto:jwshin@eecs.berkeley.edu>.

	Also (see "tcl-faq/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
wishx.


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
executed.

	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
<URL:ftp://ftp.neosoft.com/languages/tcl/alcatel/distrib/tk3.2forC++.patch>,
is a patch that allows tk 3.2 main.c and other extension routines to be
compiled with a C++ compiler.  Thanks to Ken Yap
<URL:mailto:ken@syd.dit.csiro.au> 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:http://www.cs.utah.edu/%7Ebeazley/SWIG/> 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:mailto:carroll@udel.edu>,
who asked the question, and I will post them if there seems to be general
interest.

	Also, there is an interface between Tk and Modula-3 that is a part
of the Modula-3 archives on gatekeeper.dec.com, and Tcl-DP and
Modula-3 have been merged.


D. Eiffel

	<URL:mailto:stephan@cs.tu-berlin.de> (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:ftp://hepunx.rl.ac.uk/pub/eiffel/tclish> for
details.


E. Ada

	<URL:mailto:dennis@dennis.cs.colorado.edu> (Dennis Heimbigner)
introduced an adatcl package which gives Ada programmers access to Tcl
interpreters.  (See "tcl-faq/part4") for details of the package.

F. Perl

	In the past, efforts by Dov Grobgeld
<URL:mailto:dov@menora.weizmann.ac.il> and Guenther Schreiner
<URL:mailto:guenther@ira.uka.de> 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:http://www.perl.com/perl/CPAN/CPAN.html> 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:http://www.ecrc.de/eclipse/html/protcl.html> for more details.

H. Other

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

	Some work relating to the Fresco CORBA interpreter has resulted in a
Tcl-based interpreter which interacts with that environment.  See
<URL:http://www.faslab.com/fresco/HomePage.html> for more details.

	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:mailto:sinclair@dcs.gla.ac.uk> 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, is available by ftp from
<URL:ftp://ftp.dcs.gla.ac.uk/pub/glasgow-fp/authors/Duncan_Sinclair/fumx.*>.

	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 "tcl-faq/part4").


------------------------------

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


Just a note - I don't work for any of these folk.  In some cases, folk have
contributed the description of their books.  In most cases, I haven't even
seen the book that's described.

A. Books


1. Title: Obfuscated C and Other Mysteries.
Author: Don Libes <URL:mailto:libes@nist.gov>
Publisher: John Wiley & Sons
Publication date: October 1992
ISBN: 0-471-57805-3
Price: $39.95 US
WWW book information: <URL:http://www.wiley.com/compbooks/catalog/02/57805-3.html>

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 made covered.

2. Title: Tcl and the Tk Toolkit
Author: John K. Ousterhout <URL:mailto:ouster@tcl.eng.sun.com>
Publisher: Addison-Wesley
Publication date: April 1994
Third printing: 1994
ISBN: 0-201-63337-X
Pages: 480
WWW book information: <URL:http://www.aw.com/cp/Oust.html>
Book's examples: <URL:ftp://ftp.smli.com/pub/tcl/book.examples.Z>

	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 3-89319-793-1, is also
available.

	While the book is a good intro to Tcl, it's basis on the older
Tk makes it difficult to use for some types of Tk development.

	In regards to questions about new revisions to the book, John
has indicated that a new revision would be unlikely to appear before
Tcl 8.x is released.

3. Title: X User Tools
Author: Linda Mui and Valier Quercia
Publisher: O'Reilly & Associates, Inc.
	103A Morris Street
	Sebastopol, CA US 95472
Publication date: November 1994
ISBN: 1-56592-019-8
Pages: 856
Price: $49.95 US
WWW book information: <URL:http://www.ora.com/catalog/xtools/>

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:mailto:libes@nist.gov>
Publisher: O'Reilly and Associates, Inc
Publication date: December 1994
ISBN: 1-56592-092-2
Pages: 602
WWW book information: <URL:http://www.ora.com/catalog/expect/>
Book's examples: <URL:ftp://ftp.cmd.nist.gov/pub/expect/expect.tar.gz>
Errata: <URL:ftp://ftp.cme.nist.gov/pub/expect/errata>

Email orders: <URL:mailto:order@ora.com>
HTTP orders: <URL:http://nearnet.gnn.com/gnn/bus/ora/ordering/>
Credit card orders (M-F 6am-6pm PST): (800) 889-8969 / (707) 829-0515
Mailing Address: O'Reilly & Associates, Inc.
		103A Morris Street
		Sebastopol, CA US 95472

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 7.6.  To get it
check on the WWW home page for the beta version of Expect.

The WWW home for Expect is <URL:http://expect.nist.gov/>.

5. Title: How to Manage Your Network Using SNMP
Subtitle: The Networking Management Practicum
Authors: Marshall T. Rose <URL:mailto:mrose@dbc.mtview.ca.us> and
	Keith McCloghrie
Publisher: Prentice Hall
Publication date: January 1995
ISBN: 0-13-141517-4.
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 3rd edition
Author: Jerry Peek
Publisher: O'REILLY AND ASSOCIATES
Publication date: April 1995
ISBN: 1-56592-093-7
Pages: 782
Price: $34.95 US
WWW book information: <URL:http://www.ora.com/catalog/mh3/noframes.html>

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
Author: Brent Welch <URL:mailto:bwelch@eng.sun.com>
*First edition:
Publisher: Prentice Hall
Publication date: May 1995
ISBN: 0-13-182007-9
Pages: 400
WWW book information: <URL:http://www.prenhall.com/013/182006/18200-6.html>
Book's examples: <URL:ftp://ftp.prenhall.com/pub/software/welch/tkbook.tar>
Errata: <URL:http://www.sunlabs.com/%7Ebwelch/book/>.

	This book discusses Tcl 7.4 and Tk 4.0.  It features
about 5000 lines of Tcl and 2400 lines of C code, which come with the
book on a floppy.  The book describes and summaries all the Tcl and
Tk commands and widgets.  There are longer examples that put together
small applications.  The sections on C programmer are not intended to
be complete references to the C interfaces - use the man pages for
that information.  A draft of the book - except for the index - is
available as <URL:ftp://parcftp.xerox.com/pub/sprite/welch/tkbook.ps.gz>.
Also, see <URL:http://www.sunlabs.com/%7Ebwelch/bwelch.html> for links to
pages about the book.

	The first edition of the book is a good intro to Tcl, the next
edition will makes it easier to use with the more recent Tk/Tcl features
such as megawidgets, packages, etc.

*Second edition:
Author: Brent Welch <URL:mailto:welch@acm.org>
Publisher: Prentice Hall
Publication date: June 1997
ISBN: 0-13-616830-2
Price: $42.00 US

This updated edition describes Tcl 7.6 and Tk 4.2, with some references to
a few features that will appear in later versions of Tcl.

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
Publisher: PTR Prentice Hall
Publication date: July 1995
ISBN: 0-13-125634-3
Pages: 340
Price: $47.00 US

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.

9. Title: Linux: Configuration and Installation Book/CD Package
Author: Patrick Volkerding, Kevin Reichard
Publisher: Henry Holt & Co.
Publication date: August 1995
ISBN: 1558284265
Pages: 450
Price: $39.95 US

Deals with Linux administration. Has a chapter on programming using C, C++,
Perl and Tcl/Tk.  Comes with a CD-ROM.

10. Title: Tcl and Tk reference manual
Editors: Donald Barnes, Marc Ewing <URL:mailto:marc@redhat.com>, Erik Troan
Publisher: Red Hat Software, Inc.
Publication date: September 1995
ISBN: 1-885329-08-3
Pages: 645
LoC: QA76.73.T44

Red Hat Software
25 Sylvan Road South
Wesport, CT 06880
(800) 546-7274
(203) 454-2582
(203) 454-5500 (FAX)

E-mail: <URL:mailto:sales@redhat.com>
Price: $24.95 US

A printed copy of the Tcl 7.4/Tk 4.0 man pages, along with a table of
contents, standard index, and permutated index has been published.

11. Title: The Visualization Toolkit
Subtitle: An Object-Oriented Approach to 3D Graphics
Author: Will Schroeder, Ken Martin, Bill Lorensen
Publisher: PTR Prentice Hall
Publication date: January 1996
ISBN: 0-13-199837-4
Price: $59.95 US
WWW book information: <URL:http://www.prenhall.com/013/199836/ptr/19983-6.html>

The book contains software 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 & Tk
Author: Eric F. Johnson
Publisher: M&T Books
Publication date: February 1996
ISBN: 1-55851-471-6
Pages: 374
Price: $39.95 US
WWW book info: <URL:http://www.pconline.com/%7Eerc/tclbook.htm>
		<URL:http://www.mandt.com/tcltk/tcltoc.html>

The paperback book covers Tcl 7.5b1 and Tk 4.1b1.  It focuses on
creating and debugging cross-platform graphical applications.  Windows
and Unix development is covered.  The book comes with a CD-ROM
containing Tcl/Tk sources, a binary Tcl/Tk version for Windows, the
book's source code and Tcl freeware, such as ObjectTcl, Tix4.0,
TkSteal, adaTCL7.3, BLT-1.8, dlwish, debuggers, Spectcl-01a,
GuiBuilder, XF 2.3, and other things such as expect, games, graphics,
internet related items, media, etc.

13. Title: Bots and Other Internet Beasties Book/CD Package
Author: Joseph Williams
Publisher: SAMS
Publication date: May 1996
ISBN: 1575210169
Pages: 500
Price: $49.99 US

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

14. Title: RedHat Linux Unleashed Book/CD Package
Author: Kamran Husain, et al
Publisher: SAMS
Publication date: July 1996
ISBN: 0672309629
Pages: 1040
Price: $49.99 US

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
Publisher: SAMS.NET
Publication date: July 1996
ISBN: 1-57521-102-5
Price: $39.99 US
WWW information: <URL:http://www.mcp.com/samsnet/books/102-5/102-5.html>

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:mailto:david@inforef.com>
Publisher: Prentice Hall
Publication date: August 1996
ISBN: 0-13-461674-X
Pages: 400
Price: $42.00 US

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.  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 & Lar Kaufman
Publisher: O'REILLY AND ASSOCIATES
Publication date: August 1996
ISBN: 1-56592-151-8
Pages: 650
Price: $29.95 US
WWW book information: <URL:http://www.ora.com/catalog/runux2/noframes.html>

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

18. Title: Understanding OSF DCE 1.1 For AIX and OS/2
Author: Rolf Lendenmann
Publisher: PTR Prentice Hall
Publication date: August 1996
ISBN: 0-13-493750-3
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: The Essential Guide for Users and
	System Administrators, 1/e
Author: Mark F. Komarinski
Publisher: PTR Prentice Hall
Publication date: August 1996
ISBN: 0-13-231838-5
Pages: 208
Price: $24.95 US

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

20. Title: Beginning Linux Programming
Author: Neil Matthew, Richard Stones
Publisher: Wrox Press Ltd.
Publication date: September 1996
ISBN: 1-874416-68-0
Price: $36.95 US
Pages: 700

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 Titel <URL:mailto:etittel@lanw.com>
	Mark Gaither <URL:mailto:markg@hal.com>
	Sebastian Hassinger <URL:mailto:singe@outer.net>
	Mike Erwin <URL:mailto:mikee@outer.net>
Publisher: IDG Books Worldwide
Publication date: December 1996
ISBN: 0-76458-016-7
Pages: 618
Price: $ 49.99 US
WWW information: <URL:http://www.idgbooks.com/database/book_result.msql?isbn=0-7645-8016-7>

This book 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 & Tk Reference Card
Publisher: Specialized Systems Consultants
Publication date: December 1996
ISBN: 0-91615-180-8
Price: $4.50 US

No other information available.

23. Title: Tcl Reference Card
Author: Michael K. Johnson
Publisher: Specialized Systems Consultants
Publication date: December 1996
ISBN: 0-91615-186-7
Price: $3.00 US

No other information available.

24. Title: Tk Reference Card
Author: Michael K. Johnson
Publisher: Specialized Systems Consultants
Publication date: December 1996
ISBN: 0-91615-185-9
Price: $3.00 US

No other information available.

25. Title: Linux Programming
Author: Patrick Volkerding,
	Eric Foster-Johnson,
	Kevin Reichard
Publisher: M&T Books
Publication date: January 1997
ISBN: 1-55828-507-5
Price: $39.96 US

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

26. Title: Mastering Regular Expressions
Author: Jeffrey Friedl <URL:mailto:jfriedl@omron.co.jp>
Publisher: O'Reilly & Assoc.
Publication date: January, 1997
ISBN: 1-56592-257-3
Pages: 368
Price: $29.95 US
WWW information: <URL:http://www.ora.com/catalog/regex/>
		<URL:http://enterprise.ic.gc.ca/%7Ejfriedl/regex/>

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 it's own chapter.

27. Title: Cookbook for Serving the Internet: UNIX Version, 1/e
Author: Philip E. Bourne
Publisher: PTR Prentice Hall
Publication date: February 1997
ISBN: 0-13-519992-1
Pages: 336
Price: $29.95 US

This book is intended to help one set up their own 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.

28. Title: CGI Developer's Resource: Web Programming in Tcl and Perl
Authors: J.M. Ivler <URL:mailto:ivler@i-xpress.com>
	Kamran Husain
Publisher: Prentice Hall Computer Books
Publication date: March 1997
ISBN: 0-13-727751-2
Pages: 624
Price: $49.95 US
<URL:http://www.net-quest.com/%7Eivler/cgibook/>

This book 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 from the book, as well as valuable
programming tools, are contained on the CD-ROM.

29. Title: Tcl/Tk for Dummies (For Dummies)
Author: Timothy Webster
Publisher: IDG Books Worldwide
Publication date: April 1997
ISBN: 0-76450-152-6
Price: $24.99 US

Another one of the series of programming books.

30. Title: Effective Tcl: Writing Better Programs in Tcl and Tk
Author: Mark Harrison and Michael J. McLennan <URL:mailto:mmclennan@lucent.com>
Publisher: Addison-Wesley
Publication date: May 1997
ISBN: 0-20-163474-0
Price: $38.68 US

This one is not yet available.

The synopsis from the publisher is:

Take the next step with Tcl/Tk development with this practical
programming style guide. The Tcl scripting language and the Tk toolkit
together create a programming environment for creating graphical user
interfaces under the X Window System and MS Windows 95/NT. This book
offers a wealth of practical information on how to exploit the full
potential of this remarkable programming environment.

31. Title: Database Backed Web Sites
Author: Philip Greenspun <URL:mailto:philg@martigny.ai.mit.edu>
Publisher: Ziff-Davis Press
Publication date: May 1997
ISBN: 1-56276-530-2
Price: $29.95 US
WWW site: <URL:http://www-swiss.ai.mit.edu/wtr/dead-trees/>
	<URL:http://demo.webho.com/>

A new 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
Author: Mark Harrison
Publisher: O'Reilly & Assoc.
Publication date: June 1997
ISBN: 1-56592-218-2
Pages: 900
Price: $49.95 US
WWW information: <URL:http://www.ora.com/catalog/tcltools/>

This one is will be a paperback, with CD-ROM.  The book covers the various
Tcl extensions such as BLT, ET, expect, GroupKit, [incr Tcl], [incr Tk],
[incr Widgets], MTtcl, Oratcl, Sybtcl, TCL-DP, TclX, Tix, TKReplay, Tree,
TSIPP, and many other topics, such as info on configuration
and debugging Tcl/Tk.  Binaries for many popular UNIX platforms, as well as
source, appear on the CD-ROM.

33. Title: Mobile Agents: Explanations and Example
Authors: William R. Cockayne <URL:mailto:cockayne@acm.org> and
	Michael Zyda <URL:mailto:zyda@siggraph.org>
Publisher: Manning Publications
ISBN: 1-884777-36-8 
Web pages: <URL:http://www.manning.com/Cockayne/>
Includes 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:mailto:drt@mcs.com>
Publisher: IEEE
Publication date: August 1997
ISBN: 0-8186-7796-1
Pages: 350
Price: $46.00 US
WWW information: <URL:http://www.computer.org/cspress/catalog/bp07796.htm>
Examples: <URL:http://www.mcs.net/%7Edrt/basisofai.html>

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 Professional
Publication date: August 1998
ISBN: 0122215400
Price: $39.95 US

Paperback with CD-ROM.

36. Title: Tcl Tk Workshop Proceedings, Toronto, Ontario, Canada
Subtitle: NR Edition
Publisher: Usenix Assoc.
Publication date: July 1995
ISBN: 1880446723 
Price: $34.00 US

37. Title: Professional Java Fundamentals
Authors:  Shy Cohen
Publisher: Wrox Press
ISBN: 1-861000-38-3
Pages: 500
Price: $39.95

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

xx.

Title:
Subtitle:
Authors:  
Publisher:
Publication date:
Nth Printing:
ISBN: 
Pages:
Price:
WWW book information:
Book's examples:
Errata:


99. Rumored to be in the works:

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.

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 "tcl-faq/part2") for a number of WWW resources
which provide additional information about many aspects of Tcl and it's
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 "tcl-faq/bibliography/part1") for details
of published books, magazine and journal articles, proceedings papers, and
thesises relating to the Tcl family of languages.
(See "tcl-faq/commercial-uses/part3") for details of classes offered
commercially.

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

3. Computerized Processes Unlimited has a combined Tcl/Tclx reference
manual for sale.  (See "commercial-uses/part3") for more information.

4. The USENIX Association <URL:http://www.usenix.org/> not only
sponsers 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:http://www.usenix.org/cgi-bin/lookbib.pl?raw=false&TERMS=tcl> 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

6. Title: Tcl/Tk Reference
Author: J. Ousterhout <URL:mailto:john.ousterhout@eng.sun.com>
Publisher: Cheap Bytes
	P.O. Box 2714
	Lodi, CA 95241
	U.S.A.
Pages: 700
Price: $19.00 US
WWW book information: <URL:http://www.cheapbytes.com/>

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

7. Title: Porting to Java
Author: New Riders Development Group
Publisher: NEW RIDER'S PRESS
Publication date: 1996
ISBN: 1562056026
Price: $45.00 US

      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

8. 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: 1995
LoC: QA76.27.T41

The topic is computer network architectures and neural networks.

9: Title: TCL and TK Reference Manual
Author: Barnes
Publisher: Linux System Labs
ISBN: 1-88532-908-3

No other information available.

10. Title: Tcl
Author: Kelvin Corocran
Publisher: Small Pr Distribution
Publication date: December 1989
ISBN: 1-85298-010-9
Price: $8.00 US

No other information available.

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

No other information available.

12. Title: TCL/TK Unleashed; With CDROM
Publisher: Sams
Publication date: Sept 1997
ISBN: 0672311437
Price: $49.99 US

No other information available.

---

B. Training courses, etc.

1. (See "commercial-uses/part3") 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:http://www.tcltk.com/TclDallas/>.

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

4. The course "The Internet Introduction to Tcl/Tk" is being offered over
the WWW.  Cost is $325, and covers a series of learning modules, supplementary
materials, and access to an e-mail mailing list on which the instructor and
fellow students correspond.  See
<URL:http://www.skillshare.com/skillshare/dr/tcl-intro.html> for more
details.   Contact J Adrian Zimmer <URL:mailto:jazimmer@acm.org> to register.
The course can also be taught on-site or via telephone conferencing.  Again,
contact Adrian for details.

5. The course "Programming Using Tcl/Tk" will be held at the PG&E Learning
Center of UC Berkeley Extension from Tuesday, September 3 to Tuesday, October
1 (6:30pm to 9:30pm).

You learn the basics of scripting in Tcl, Tcl extensions for network
programming (particularly Expect and TclDii), user interface
construction with Tk, advanced Tk features such as event handling and
focus management, getting the most out to the powerful text and canvas
widgets, extending Tcl and Tk with C or C++ programming, and more.  A
series of applications are described, and you are ncouraged to
experiment on your own PC, Macintosh, or UNIX/X11 system.

Prerequisite: An introductory course in computer programming.
Fee: $325

Instructor:  Ernest Friedman-Hill, Ph.D., a Senior Member of the
Technical Staff in the Scientific Computing Department at Sandia National
Laboratories.  He is currently researching "smart agents" in scientific
and engineering computing.

More info?:  send mail to <URL:mailto:course@garnet.berkeley.edu>


---

C.  Time-related seminars, conferences, workshops.

1. There have been, in the past, seminars and BOFs/SIGs at Usenix, the MIT X
conference, and other conferences taught by John Ousterhout and others
on Tcl and Tk.
(See also "tcl-faq/part2") for the URL to the slides from the most recent
of these presentations by John.

If you are planning on attending a conference, check for these types
of activies, as well as sessions dealing with applicatons of Tcl/Tk.
Let the others in <URL:news:comp.lang.tcl> know about the event so that others
might also attend.  For that matter, consider scheduling a Tcl/Tk
event yourself if you are so inclined!

2. University of Maryland Baltimore County has been holding a course titled
CMSC491C - Special Topics in Computer Science - Scripting Languages.
This is 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:mailto:finin@cs.umbc.edu> (Tim Finin).

3. The Cooperative Research Centre for Advanced Computational Systems,
at the Australian National University, Canberra Australia, has been
offering Introductory and Advanced Tcl/Tk courses.  The first course,
"An Introduction To the Tcl Language and Tk Toolkit", was held from
29th November to 1st December 1995.  Courses will be conducted on a
regular basis.

For the latest information, see
<URL:http://pastime.anu.edu.au/tcl/Courses.html>.

4. CPU Tcl / Expect training Class

Public offering of a class in Tcl and Expect, held the week of October 28, 1996.
The location is Metairie, LA (a suburb of New Orleans).  The class is a five
day course.  Details can be found at
<URL:http://web.cpu.com/homepage/cnslttr.htm> or by email to
<URL:mailto:ktr@cpu.com> (Kim T. Richert).

5. The Fifth annual Tcl/Tk Workshop will be held July 14-17, 1997 in
Boston, Massachusetts, US.  See <URL:http://www.usenix.org/tcl97> for
details on submission instructions, deadlines, etc.  The deadlines
are in early April, 1997.

6. See <URL:http://www.tcltk.com/training/> for details of several
Tcl/Tk and [incr Tcl] classes being conducted by Bell Labs Training.
During 1997 the classes "Building Applications with Tcl/Tk" and
"Object-Oriented Programming with [incr Tcl]" are planned in
Bethlehem, PA (March 3-5 and March 6-7, 1997),
Murray Hill, NJ (March 17-19 and March 20-21, 1997),
Lisle, IL (April 7-9 and April 10-11, 1997), and
Atlanta, GA (April 28-30, May 1-2, 1997).
Contact Lynn Rogers at (610)712-2333 for more details.

7. CPU is offering an "Introduction to Programming in Tcl/Tk" during the
week of 04-Aug-97.  For more information, see
<URL:http://www.cpu.com/schedule.htm> or send mail to
<URL:mailto:info@cpu.com>.


------------------------------

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 on
<URL:ftp://ftp.neosoft.com/pub/tcl/> (in the User Contributions archive site) -
if you want your code to be available, you will need to make
arrangements with the folks there to have it added.  See elsewhere in
the FAQ for more details on the user contrib archive site.

	The second alternative would be to report problems, suggestions, new
ideas, etc. directly to the author.  Email to
<URL:mailto:John.Ousterhout@eng.sun.com> (John Ousterhout)
will reach the author of Tcl and Tk; to find the email
address of the authors of other Tcl/Tk based programs,
(see "tcl-faq/part4"), and (see "tcl-faq/part5").
Note that John has asked folks to PLEASE use <URL:news:comp.lang.tcl>
for public communications.

	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 7.6p2/Tk 4.2p2), 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:ftp://ftp.myhost.com/some/path/stuff.tcl> )
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
folk send private email 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 folk 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 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 folks 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 folk 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:mailto:tcl-announce@mitchell.org>.  Also, feel free to just point folk
at your own ftp site or WWW site if you have one which can be used.  Folk
should not feel compelled to keep everything on one site - but should feel
free to ftp contributions there if they wish.

------------------------------

End of comp.lang.tcl Frequently Asked Questions (1/5)
*****************************************************
-- 
Larry W. Virden                 INET: lvirden@cas.org
<URL:http://www.teraform.com/%7Elvirden/> <*> O- "We are all Kosh."
Unless explicitly stated to the contrary, nothing in this posting should 
be construed as representing my employer's opinions.

[[Send Tcl/Tk announcements to tcl-announce@mitchell.org
  Send administrivia to tcl-announce-request@mitchell.org
  Announcements archived at http://www.xpi.com/tcl/comp.lang.tcl.announce/
  The primary Tcl/Tk archive is ftp://ftp.neosoft.com/pub/tcl/ ]]



Part1 - Part2 - Part3 - Part4 - Part5


Send corrections/additions to the FAQ Maintainer:
lvirden@cas.org (Larry W. Virden)

Last Update July 11 1997 @ 03:30 AM