home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Usenet 1994 January
/
usenetsourcesnewsgroupsinfomagicjanuary1994.iso
/
answers
/
tcl-faq
/
part1
next >
Wrap
Text File
|
1993-12-17
|
45KB
|
1,112 lines
Newsgroups: comp.lang.tcl,comp.answers,news.answers
Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!usc!math.ohio-state.edu!caen!malgudi.oar.net!chemabs!lvirden
From: lwv26@cas.org (Larry W. Virden)
Subject: FAQ: comp.lang.tcl Frequently Asked Questions (1/5)
(Last updated: December 17, 1993)
Message-ID: <tcl.p1_756137861@cas.org>
Followup-To: comp.lang.tcl
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.
Originator: lwv26@srv01s4
Keywords: tcl, extended tcl, tk, expect
Sender: lvirden@cas.org
Supersedes: <tcl.p1_753975163@cas.org>
Reply-To: lvirden@cas.org (Larry W. Virden)
Organization: Chemical Abstracts Service
Date: Fri, 17 Dec 1993 14:17:45 GMT
Approved: news-answers-request@MIT.Edu
Expires: Fri, 28 Jan 1994 14:17:41 GMT
Lines: 1089
Xref: senator-bedfellow.mit.edu comp.lang.tcl:9438 comp.answers:3071 news.answers:15929
Archive-name: tcl-faq/part1
Version: 4.4
Last-modified: December 17, 1993
For more information concerning Tcl (see "tcl-faq/part2"),
(see "tcl-faq/part3"), (see "tcl-faq/part4"), or (see "tcl-faq/part5").
Index of questions:
I. Origin of the comp.lang.tcl FAQ information.
II. What is Tcl? Tk? Extended Tcl?
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. Other
V. Is there a bibliography of material relating to these programs?
A. The Tcl distribution
B. The Expect distribution
C. Miscellaneous other online materials
D. Published articles
E. Training courses, materials, etc.
F. Time-related seminars, conferences, sessions.
VI. Where do I report problems, bugs, or enhancements - or -
What is comp.lang.tcl?
VII. Are there any mailing lists covering topics related to Tcl/Tk?
VIII. Where can I find the FAQ and who do I contact for more information
about it?
End of FAQ Index
----------------------------------------------------------------------
------------------------------
From: FAQ General information
Subject: -I- Origin of the comp.lang.tcl FAQ information.
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.
I am always on the search for folk to assist in the maintenance
of these FAQs. In fact, if you feel that you would like to coordinate
this effort, PLEASE let me know!
------------------------------
From: FAQ General information
Subject: -II- What is Tcl? Tk? Extended Tcl?
Tcl and Tk originated with Dr. John Ousterhout (Oh'-stir-hout -
last syllable rhymes with rout, not root) from the University of California,
Berkeley, California.
Tcl (current release version 7.3) stands for ``tool command
language'' and is pronounced ``tickle.'' The author's home ftp site for
the Tcl source code is ftp.cs.berkeley.edu. 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 three 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.
Tk (current release 3.6) - an extension to Tcl which provides
the programmer with an interface to the X11 windowing system. The
author's home ftp site for the Tk source is ftp.cs.berkeley.edu.
Note that many users will encounter Tk via the ``wish'' command. Wish
is a simple windowing shell which permits the user to write Tcl
applications in a prototyping environment.
Extended Tcl (tclX) (Version 7.3a) - 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 ftp.neosoft.com. Extended
Tcl is oriented towards system programming tasks, with many additional
interfaces to the Unix operating system along with other useful
utilities.
------------------------------
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,
Silicon Graphics running IRIX, HPs running HP-UX as well as HP Snakes
running OSF/1 and HPUX. 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. At least one
person has ported Tcl to a Mac (IIfx) running A/UX v3.0. Someone
ported Tcl to a Sony NeWS machine running NEWS-OS 4.2.
A port to a Convex 3220 and 3880 was also reported.
Tk (being based on Tcl) requires X11R4 or better as the only
additional software requirement. It runs on any of the above Unix
systems with that base of software.
For information on Tcl/Tk/TclX availability (see "tcl-faq/part4").
B. MacOS
See below for details of a Macintosh Tcl Mailing list.
---
Ray Johnson <rjohnson@aic.lockheed.com> has a package called
MacTcl. This is a fairly straight port of Tcl to the Macintosh. It is
designed to be used as libraries to be embedded into other
applications. A basic shell is included. Most Tcl features are
present, including many Unix-like features. Additional features
include supporting the env variable and, in the next release, sourcing
Tcl code from a resource. The current version is
ftp://harbor.ecn.purdue.edu/pub/tcl/distrib/mactcl6.7b.sea.hqx
and a version supporting Tcl 7.0 will be available shortly after it is
released.
As of this time, I have no leads on anyone porting Tk to MacOS.
I also have not heard of anyone porting Tcl/Tk to an Apple PowerPC.
Also (see "tcl-faq/part4"), the Tcl programs/packages catalog,
for the latest port locations and versions.
C. INTEL DOS-like systems
Numerous ports to DOS are available. One unsupported port to MS-DOS
of Tcl and Extended Tcl V6.0a, done by "Karl Lehenbauer" <Karl@NeoSoft.com>,
is available on ftp://harbor.ecn.purdue.edu/pub/tcl/distrib/dostcl.zoo for
binaries and ftp://harbor.ecn.purdue.edu/pub/tcl/distrib/dostcl60.zoo for
source.
A port of Tcl V6.2 to MS-DOS was done by
"John Martin" <johnm@cajal.uoregon.edu> and is available via FTP from
ftp://cajal.uoregon.edu/pub/tcl.dos.port/ and
ftp://harbor.ecn.purdue.edu/pub/tcl/distrib/tcl62.dos.tar.Z .
A source code only port of Tcl V6.7 to MS-DOS, done by
PSPRENG@CIPVAX.BIOLAN.UNI-KOELN.DE (Peter Sprenger), is available from
him, somewhere on wuarchive.wustl.edu
or as
ftp://harbor.ecn.purdue.edu/pub/tcl/distrib/tcl67dos.zip .
A port of Tcl, V6.1 ?, done by unknown, to MS-DOS Windows
V 3.1 ?, is available as binary at
ftp://harbor.ecn.purdue.edu/pub/tcl/distrib/w_tclbin.zip and as source at
ftp://harbor.ecn.purdue.edu/pub/tcl/distrib/w_tclsrc.zip .
An MS-DOS Windows DLL instance of Tcl 6.2 was generated by
Ugo Cei <ugo@oliver.sublink.org>. Contact him for more details.
A port of Tcl Generic V6.7 (plus some minor extensions to OS/2 2.x
has been done by bachww@rtsg.mot.com (Bud Bach).
A Windows DLL was made by ekki@prakinf.tu-ilmenau.de (Ekkehard Beier)
by slightly modifying a DOS 6.2 Tcl port. There are still problems
with the system/WinExec command. A very rudimentary Debugger User Interface
using Borland's Classlib is part of the zip-file, too.
I used it with BC3.1++/AF on MS W3.1. You can get a copy from
ftp://metallica.prakinf.tu-ilmenau.de/pub/DOS/wintcl.zip
via anonymous ftp. Unfortunately Ekki doesn't have time currently to
finish the Windows port and user Interface.
Someone, whose name I don't have, reported porting Tcl to QNX
with a fair amount of hacking.
As of this date, I have no leads on anyone porting Tk to any version
of Windows or OS/2.
Also (see "tcl-faq/part4"), the Tcl programs/packages catalog,
for the latest port locations.
D. VMS
A port of Tcl 6.2 and Tk 1.4 to VMS was done by Angel Li
<angel@flipper.rsmas.miami.edu>. The files were at
ftp://mango.rsmas.miami.edu/pub/tcl-vms.bck.Z and
ftp://mango.rsmas.miami.edu/pub/tk-vms.bck.Z
and were compressed with the Unix compress command. The files were VMS
BACKUP files. A recent report has it that these files are no longer
available.
A port of Tcl 6.3 onto VMS 5.5 was done by Wolfgang Kechel
<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
<jkimball@src.honeywell.com> to VMS 5.5. The files are on:
ftp://src.honeywell.com/pub/tcl67-tk32-on-vms55.tar.Z .
Gerald W. Lester (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.
A port of Tcl 7.0 and Tk 3.3 has being done to VMS on the
VAX and Alpha. These are available as:
ftp://src.honeywell.com/pub/vms-tcl/tcl70-tk33-on-vms55.tar.Z
Also (see "tcl-faq/part4"), the Tcl programs/packages catalog,
for the latest port locations.
E. AmigaDOS
Karl Lehbauer <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 <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, 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.
hnm@hermes.bouw.tno.nl (Marco van der Heiden) has completed a port
to the Amiga, and suggests Amiga developers contact him by email. Also
Ingo Wilken (Ingo.Wilken@arbi.informatik.uni-oldenburg.de) wrote that
he was working on a port to the Amiga, with a goal of creating
a shared library system.
Also (see "tcl-faq/part4"), the Tcl programs/packages catalog,
for the latest port locations.
F. NeXT
Gianmaria Bertanzon <gm@itnsun4.lii.unitn.it> reports:
> We are using tk3.2 on NeXT ( Motorola ) under NextStep 3.0 under X.
> The compilation was easy. (we do not remember precisely all the steps)
Also (see "tcl-faq/part4"), the Tcl programs/packages catalog,
for the latest port locations.
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 thor.atd.ucar.edu:~ftp/pub/vx/tclvx7.0.v2.tar.gz .
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 at least two interfaces which are shell-like. The
first is wish, which is a windowing shell like interface that is a part
of the Tk package. The second is tcl, a line command interpreter that
is part of the Extended Tcl package.
B. C++
Check out tcl++.h in Extended Tcl. Based on an original
implementation by Parag Patel, it defines a Tcl interpreter class by
which Tcl interpreters can be created as objects under C++.
Also, ftp://harbor.ecn.purdue.edu/pub/tcl/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 <ken@syd.dit.csiro.au>
for this code.
Mark Diekhans and Karl Lehenbauer have used this, in
combination with the handle facility in Extended Tcl, to build Tcl
commands around C++ classes.
The Tcl handle facility provides a way to manage table entries
that can be referenced by a textual handle from Tcl code. This is
provided for applications that need to create data structures in one
command, return a reference (i.e. pointer) to that particular data
structure and then access that data structure in other commands. An
example application is file handles.
A handle table was built containing pointers to the instances
of a class that were to be accessed from Tcl, say a class `foo_cl', and
then a "new" command defined that created an instance of that class and
returned a Tcl handle to it. The handle could then passed among Tcl
commands that accessed each member function. The handle is in effect
an explicit `this' pointer.
For example:
set obj [foo_cl::new]
foo_cl::baz $obj "Hello world"
foo_cl::delete $obj
It's not totally object-oriented, but it's still very usable.
C. Modula-3
Norman Ramsey <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 carroll@udel.edu, who asked the
question, and I will post them if there seems to be general interest.
D. Eiffel
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.
E. Ada
dennis@dennis.cs.colorado.edu (Dennis Heimbigner) introduced
an adatcl package which gives Ada programmers access to Tcl interpreters.
See the catalog for details of the package.
F. Other
Duncan Sinclair <sinclair@dcs.gla.ac.uk> has details of a hack
into wish.c some hooks for a Tk <-> 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
ftp://ftp.dcs.gla.ac.uk/pub/glasgow-fp/authors/Duncan_Sinclair/fumx.* .
------------------------------
From: FAQ General information
Subject: -V- Is there a bibliography of material relating to these
programs?
A. The Tcl distribution
With the Tcl distribution there is a Postscript version of a Usenix
paper introducing Tcl. With the Tk distribution, there is a Postscript
version of a Usenix paper introducing Tk.
Ousterhout, J.K., (1990) ``TCL: An Embeddable Command Language'', in
the Proceedings of the 1990 Winter USENIX Conference, pp 133-146.
Ousterhout, J.K., (1991) ``An X11 Toolkit Based on the TCL Language'',
in the Proceedings of the 1991 Winter USENIX Conference, pp 105-115.
Postscript file for introductory papers on Tcl and Tk are available as
the public FTP area on ftp.cs.berkeley.edu (Internet address
128.32.149.78). Their address is:
ftp://ftp.cs.berkeley.edu/ucb/tcl/tclUsenix90.ps
ftp://ftp.cs.berkeley.edu/ucb/tcl/tkUsenix91.ps
ftp://ftp.cs.berkeley.edu/ucb/tcl/tkF10.ps
(The last of these files is the contents of Figure 10 of the Tk paper)
If you have trouble retrieving the papers via FTP or printing them,
send bmiller@cs.berkeley.edu your U.S. Mail address and he will mail
you paper copies.
B. The Expect distribution
With the Expect distribution, there are several Postscript documents
available which have been published.
1. "Curing Those Uncontrollable Fits of Interaction", Proceedings of the
Summer 1990 USENIX Conference, Anaheim, CA, June 11-15, 1990.
This paper is discussion of implementation, philosophy, and design.
It's address is:
ftp://ftp.cme.nist.gov/pub/expect/seminal.ps.Z
2. "Using expect to Automate System Administration Tasks", Proceedings of
the 1990 USENIX Large Systems Administration Conference (LISA) IV,
Colorado Springs, CO, October 17-19, 1990.
This paper is discussion and examples, specifically aimed at system
administrators. The address of this paper is:
ftp://ftp.cme.nist.gov/pub/expect/sysadm.ps.Z
3. "expect: Scripts for Controlling Interactive Programs", Computing
Systems, Vol. 4, No. 2, University of California Press Journals, 1991.
A comprehensive paper of example scripts. This paper's address is:
ftp://ftp.cme.nist.gov/pub/expect/scripts.ps.Z
4. "Regression Testing and Conformance Testing Interactive Programs",
Proceedings of the Summer 1992 USENIX Conference, San Antonio, CA,
June 8-12, 1992.
This paper discusses the application of expect to the verification
of software. This paper's address is:
ftp://ftp.cme.nist.gov/pub/expect/regress.ps.Z
5. "Kibitz - Connecting Multiple Interactive Programs Together",
Software - Practice & Experience, John Wiley & Sons, West
Susses, England, Vol. 23, No. 5, May 1993.
This paper is a discussion of using Tcl and Expect to connect multiple
interactive programs together. This paper's address is:
ftp://ftp.cme.nist.gov/pub/expect/kibitz.ps.Z
C. Miscellaneous other online materials
1. The ftp address for a FrameMaker MIF file containing a Quick Reference guide
to Tcl is:
ftp://harbor.ecn.purdue.edu/pub/tcl/docs/QuickRef.tar.Z
Many thanks to "Jeff Tranter" <Jeff.Tranter@software.mitel.com> for
contributing it.
2. PostScript versions of the man pages were provided by
"Adrian Ho" <adrianho@barkley.berkeley.edu>. The addresses for these are:
ftp://harbor.ecn.purdue.edu/pub/tcl/docs/tcl6.3.manps.tar.Z
ftp://harbor.ecn.purdue.edu/pub/tcl/docs/tclX6.2b.manps.tar.Z
ftp://harbor.ecn.purdue.edu/pub/tcl/docs/tk2.1.manps.tar.Z
3. An early draft of the following text book is available:
Title: Tcl and the Tk Toolkit
Author: John K. Ousterhout
Publisher: Addison-Wesley
Expected availability: February 1994
ISBN: 0-201-63337-X
The section dealing with writing Tcl scripts is:
ftp://ftp.cs.berkeley.edu/ucb/tcl/book.p1.ps.Z
The section dealing with writing Tcl scripts for Tk is:
ftp://ftp.cs.berkeley.edu/ucb/tcl/book.p2.ps.Z
The section dealing with writing Tcl applications in C is:
ftp://ftp.cs.berkeley.edu/ucb/tcl/book.p3.ps.Z
The section dealing with writing Tk widgets and geometry managers
in C is:
ftp://ftp.cs.berkeley.edu/ucb/tcl/book.p4.ps.Z
The first two parts are about 130 pages in length and the third and fourth
parts are less than 70 pages in length each. This is ONLY a draft and is not
permitted to be redistributed.
4. A series of PostScript slides used in a tutorial on Tcl and Tk at
the 1993 X Conference are available as:
ftp://ftp.cs.berkeley.edu/ucb/tcl/tut.tar.Z
5. A set of Postscript files collected for the Tcl 93 workshop proceedings
is available as:
ftp://harbor.ecn.purdue.edu/pub/tcl/workshop/tcl93-proceedings.tar.Z
This file contains the following papers:
a. "A Debugger for Tcl Applications", by Don Libes, National Institute
of Standards and Technology.
Describes a debugger for Tcl applications.
b. "A Compiler for the Tcl Language", by Adam Sah and Jon Blow, University
of California, Berkeley, CA.
A discussion of the design issues for providing a compiler for the Tcl
language.
c. "[incr tcl] - Object-Oriented Programming in TCL", by Michael J. McLennan,
AT&T Bell Laboratories, Allentown, PA.
Describes a set of extensions for organizing Tcl procedures and
data into packages.
d. "CASTE: A class system for Tcl", by Michael S. Braverman, University of
California, Berkeley, CA.
Introduces a structured object class extension for Tcl.
e. "Interfacing an Object-Oriented Database System from Tcl", by
Dietmar Theobald, Forschungszentrum Informatik, Karlsruhe Germany
A generic interface extension to an object-oriented database.
f. "Tcl Distributed Programming", by Brian C. Smith, Lawrence A. Rowe, and
Stephen C. Yen, University of California, Berkeley, CA.
Introduces the Tcl-DP extension to Tcl.
g. "Cooperating Applications through Tcl/Tk and DCE", by David Richardson,
University of Michigan
Description of integrating Tcl/Tk into Open Software Foundation's
Distributed Computing Environment.
h. "NeoSoft Whiteboard - A framework for Internet-based Collaboration",
by Karl Lehenbauer, Ellyn Mustard, NeoSoft, Inc., Brad Morrison,
Paranet, Inc.
Describes a generic groupware framework using Tcl/Tk.
i. "Tcl/Tk as a Basis for Groupware", by Mark Roseman, University of Calgary,
Alberta Canada
Why Tcl/Tk provides a good environment for groupware developers.
j. "Tcl and Tk Use in the Artifact Based Collaboration System", by
John Menges and Mark Parris, University of North Carolina.
Describes a collaboration system being built at UNC whose user
interfaces are based on Tk.
k. "Ak: An Audio Toolkit for Tcl/Tk", by Andrew C. Payne, Digital Equipment
Corporation, Cambridge Research Lab.
Describes Ak, an audio extension for Tcl build on the AudioFile
System.
l. "A Tcl/Tk Continuous Media Player", by Brian C. Smith, Lawrence A. Rowe, and
Stephen C. Yen, University of California, Berkeley, CA.
A Tk application that supports playback of live digital audio and
video on a Unix workstation.
m. "Tcl in a High-Throughput Biological Lab", by Scott P. Hunicke-Smith &
Dan Mosedale, Stanford Yeast Genome Project
Description of use of Tcl based control of a laboratory robot.
n. "Autonomous Knowledge Agents - How Agents use the Tool Command Language",
by Raymond W. Johnson, Lockheed Missiles and Space Corporation, Palo Alto,
CA.
Descriptions of traits of a software agent and how one of these
traits led to the use of Tcl.
o. "Implementing a Visualization of an Industrial Productions Cell Using
Tcl/Tk", by Arthur Brauer, Claus Lewerentz, and Thomas Lindner,
Forschungszentrum Informatik, Karlsruhe Germany.
Discussion of a complex animated simulation written using Tk/Tcl.
p. "Writing Object-oriented Tcl-based Systems using Objectify", by
Wayne A. Christopher, University of California, Berkeley, CA.
Describes Objectify, a facility for integrating C++ classes into
Tcl-based systems.
q. "Use of Tcl/Tk in DTS, an Interactive Optimization and Scheduling System",
by Benjamin Fried, Aleks Gollu and Othar Hansson, Heuristicrats Research Inc.
An abstract of the work being done with Tcl in a NASA scheduling
system.
r. "Embedding a Scheme Interpreter in the Tk Toolkit", by
Erick Gallesio, Valbonne, France.
Describes STk, which is a Tk package with Scheme replacing Tcl.
s. "The Next, Best Thing in File Browsers", by Michael A. Harrison,
Thomas A. Phelps, University of California, Berkeley, CA.
Describes NBT, an extended NeXTSTEP file selection box.
t. "Tcl/Tk - An Integration Vehicle for the Microwave/Millimeter-Wave
Pilot Sites (MMPS)", by Kevin B. Kenny, Brion D. Sarachan,
Robert N. Sum Jr., and Wayne H. Uejio, GE Corporate R&D.
Describes developing wrappes for commercial vendor
applications like FrameMaker (R) and Xess (R).
u. "Generalising a File Manager into an Address Book and Other Things",
by J. D. Newmarch, University of Canberra, Australia
Describing a redesign of an X file manager to allow the best
features of a command line environment and a graphical interface.
v. "Noosa: Execution Monitoring using Tcl and Tk", by Anthony M. Sloane,
University of Colorado.
An overview of an event-based execution monitoring system.
w. "An Interactive Compiler Development System", by Gary S. Tyson,
Robert J. Shaw and Matthew K. Farrens, University of California, Davis, CA.
Describes an interactive graphical optimizer.
6. A second set of Postscript files consisting primarily of overhead slides
is available as:
ftp://harbor.ecn.purdue.edu/pub/tcl/workshop/tcl93-proceedings2.tar.Z
This file (tcl93-proceedings2) contains the following slides:
a. "Cooperating Applications through Tcl/Tk and DCE", by David Richardson,
University of Michigan.
b. "Ak An Audio Toolkit for Tcl & Tk", by Andrew Payne, Digital Equipment
Corporation, Cambridge Research Laboratory.
c. "Tcl Distributed Programming", by Brian C. Smith, Lawrence A. Rowe,
Stephen C. Yen, University of California at Berkeley.
d. "Supervisory Control Language - Applying Tcl to the Realtime Arena"
presentation by Computerized Processes Unlimited, Inc.
e. "Tcl / Tk as a Basis for Groupware" by Mark Roseman
This file (tcl93-proceedings2) contains the PostScript for the paper:
f. "A Table Manager for Tk", by G. A. Howlett <George.A.Howlett@att.com>,
ATT.
This file (tcl93-proceedings2) also contains Usenet postings by:
h. /* ???? */
i. /* ???? */
j. /* ???? */
k. /* ???? */
7. The Tcl Compiler (TC) Frequently Asked Questions by Adam Sah
<asah@cs.Berkeley.EDU> is a document describing TC, which is a work
in progress. Contact Adam for details.
8. A compact yet detailed overview of Tcl, Tk and Xf is available thanks
to the graciousness of theobald@fzi.de (Dietmar Theobald) at:
ftp://ftp.fzi.de/pub/OBST/OBST3-3/psfiles/TclTk_notes.ps.Z
(compressed format) and
ftp://ftp.fzi.de/pub/OBST/OBST3-3/psfiles/TclTk_notes.ps.gz (gzip format)
9. Softcopy of an article about PhoneStation, a tool using Tk and Tcl, was
presented at the 1993 Winter USENIX Conference.
Uhler, Stephen A. (1993) ``PhoneStation, Moving the Telephone onto the
Virtual Desktop'', in the Proceedings of the 1993 Winter USENIX Conference,
pp ??-??
A softcopy of the paper is available as
ftp://bellcore.com/pub/PhoneStation/USENIX.ps
10. VanAndel, J.H., 1993: ``Design of a New Radar Control and Data Acquisition
System''. Preprints, 26th Conference on Radar Meteorology, Norman, Oklahoma
The paper is available in postscript form via the experimental web server:
<a href="http://www.atd.ucar.edu/jva/RadarControl.AMS.ps"> Radar Control PS </a>
11. Mark A. Harrison <mharriso@utdallas.edu> has written a Tk/Tcl
information sheet, providing an introductory look at why one might want to
use Tcl and Tk. Version 1.0 was posted to comp.lang.tcl as
<278ml0$457@news.utdallas.edu>. Contact him for a copy.
12. Cedric Beust <beust@modja.inria.fr> has written a short article
giving guidelines on where to start when writing a Tcl extension. You
may find it at ftp://avahi.inria.fr/tcl/writing-a-tcl-extension.ps .
13. Douglas Pan and Mark Linton <linton@marktwain.rad.sgi.com> have
written the paper ``Dish: A Dynamic Invocation Shell for Fresco''.
It is available at ftp://sgi.com/graphics/fresco/dish.ps.Z . The FAQ
as well as some other papers are in ftp://sgi.com/graphics/fresco .
Fresco is an X Consortium project - non-members interested in contributing
to the effort should contact Mark Linton.
D. Published articles and books
1. Computer Shopper, V12 N12, page 862 had an article referencing Tickle,
the shareware package under Macintosh System 7 which is based on Tcl.
2. MacWEEK, V6 N32, page 91 had an article referencing Alpha 5.0, the
Macintosh editor which incorporates Tcl.
3. Computer Language, V9 N7, page 76 had an article referencing Tcl in
a hardware/software testing package which talks to a remote machine via
a proprietary interface card.
4. SunWorld, V5 N10, pages 95-96 had a article discussing Tcl, Tk and
expect.
5. UNIX REVIEW, V11 N4, pages 93-94, by Richard Morin. The article,
a part of "The Internet Notebook", is about Tcl, Tk, and friends.
It mentions a little about Tcl and Tk, where to find the
sources, where to find the draft of the book, and where to find the
contributed software.
6. SunExpert, V4 N3, pages 32-36, by Richard Morin. As part of Morin's
I/Opener series of articles, this is just a brief overview of Tcl and Tk.
It mentions some of the technical ideas behind Tcl and Tk, where to find
the Tcl source and mentions that the draft of the book is available on
ftp.cs.berkeley.edu. A 'hello, world' 3 line wish script is really
all that is shown.
7. Libes, Don, "Obfuscated C and Other Mysteries", Wiley & Sons,
January 1993.
This book has a whole chapter on Tcl. Aimed at the C programmer, it
describes how to effectively use Tcl from C applications. Another
chapter is on Expect - a walk-through of some of the more interesting
code in Expect. These chapters originally appeared as separate
articles in The C Users Journal, Vol. 8, No. 7, July 1990, and Vol. 9,
No. 1, 1991. (Incidentally, the reason the book has such a peculiar
title is that it also contains explanations of the Obfuscated C Code
Contest winners.)
8. IEEE Design & Test of Computers, June 1993, pages 46-54,
"RISE++: A Symbolic Environment for Scan-Based Testing" by Steve Vinoski.
An article describing a system called the Remote Interactive Scan
Environment (RISE++) that marries Tcl with RPC for the purpose of
testing remote computer systems.
9. The X Journal, March-April 1993, pages 74-81, "HYPERTOOLS
A revolution in GUI applications" (listed in the TOC as "Hypertools: A GUI
revolution") by John K. Ousterhout and Lawrence A. Rowe.
10. Proceedings 1993 Tcl/Tk Workshop, Berkeley, CA, June, 1993. See above
for online version information concerning these proceedings.
11. iX (multiuser/multitasking magazine), September 1993,
pages 76-84 and 182-185. Two articles written in the German language.
These concern the design (interpreter and library) of Tcl/Tk and its
connections with C++. The articles say where to find the packages and
some associated tools (such as XF). There are short examples on how to
write programs with Tcl/Tk (taken from the demo-directory of the
package) and examples on using XF. Very informative.
Additional bibliographic references are still being sought.
E. Training courses, materials, etc.
1. There have been, in the past, seminars at Usenix and the MIT X
conference taught by John Ousterhout on Tcl and Tk. See above for the
slides from the most recent of these presentations. Other conferences
are also mentioning Tcl and Tk in their announcements. Recently the
Usenix Very High Level Language Conference mentioned Tcl.
2. NeoSoft Communications Services ( info@NeoSoft.com, (713) 684-5900 ,
9am - 4pm CDT M-F ) can teach introductory and advanced Tcl courses on
site or at their location in Houston, Texas. A syllabus and pricing
information are available on request. Please contact Ellyn Mustard at
(713) 684-5900 or via email to ellyn@neosoft.com for more details.
3. Computerized Processes Unlimited ( gwl@cpu.com, (504) 889-2784
4200 S. I-10 Service Road, Suite #205, Metairie, LA 70001 )
has a combined Tcl/Tclx reference manual for sale. It groups the commands
by chapter based on functionality and has an extensive index. They
also offer courses on Tcl. For instance:
1. Course Title: Introduction to Programming in Tcl
Course Length: 2 Days
Course Format: Course material is presented in a lecture format and
through a hands on laboratory using a
network of X terminals connected to a RISC workstation.
Course Description: This course introduces the participant to programming
in Tcl/TclX.
Topics include:
- Variables
- Arrays
- Lists
- Keyed Lists
- Syntax
- Flow control
- Procedures
o Creating
o Invoking
o Passing variables
o Passing arrays
o Passing lists
- Running programs from Tcl
- Communicating with child processes
- Signal handling
- Error processing
- Accessing system facilities
- Programming techniques
o Using autoloading procedures
o Proper use of quoting
Course Level: Technical: Beginner to Intermediate
Prerequisites: Use of vi or emacs editors
Exposure to programming concepts
Use of csh/ksh (not programming)
2. Course Title: Building Graphical User Interfaces in Tk
Course Length: 2 Days
Course Format: Course material is presented in a lecture format and
re-enforced through a hands on laboratory using a
network of X terminals connected to a RISC workstation.
Course Description: This course introduces the participant to building
graphical user interfaces using Tcl/Tk.
Topics include:
- Background Concepts
- A tour of the widgets
- Adding Bindings
- Widget Class Bindings
- Geometry Managers
- Running programs from Tcl/Tk
- Communicating with child processes
- Writing widgets in Tcl/Tk
- Programming techniques
o Proper use of quoting
- Interface Builders for Tk
Course Level: Technical: Beginner to Intermediate
Prerequisites: CPU's "Introduction to Programming in Tcl" course
or understanding and experience using Tcl
4. A physical copy of the Tcl / Tk distributed documentation is
available at the Northside Copy Central in Berkeley under the name "TCL" and
is titled "Tcl/Tk Documents". Northside Copy Central is at 1862 Euclid
with a phone of (510) 849-9600. It costs approx. $15-$20 for the book in
a spiral bound, pink cover, clear plastic front and back format.
5. At the Boston X Technical Conference, on January 24th, 1994, a day long
Tcl/Tk tutorial will be presented by payne@crl.dec.com (Andrew Payne).
It is aimed at the beginning Tcl/Tk programmer and Andrew hopes to do
a narrated tour of the Tk widgets.
Also at this conference, John Menges will be presenting
"Constructing X Pseudo-Servers with the X Protocol Engine Library (XPEL)"
in an all day tutorial. This is a C++ library to which one can use Tcl
to communicate.
F. Time-related seminars, conferences, sessions.
1. A Tcl/Tk workshop was held June 10-11, 1993 at University of
California at Berkeley. The workshop proceedings are going to be made
available for ftp in the near future. The bibliographic references for
the articles published will be added in the near future.
2. Classes on Tcl and Tk have been held at Usenix and the MIT X
Developers Conferences in the past. The most recent one that I have seen
mentioned occurred during the Summer Usenix in Cincinnati, OH. At least
three sessions related in some manner to Tcl/Tk - the Unix Power Tools
(Monday) and the Tcl/Tk (Tuesday) tutorials, as well as the Unix guru
session with John Ousterhout on Tuesday night.
------------------------------
From: FAQ General information
Subject: -VI- Where do I report problems, bugs, or enhancements - or -
What is comp.lang.tcl?
There are two alternatives for reporting bugs and problems.
The first is the USENET news group news:comp.lang.tcl, an unmoderated USENET
newsgroup, created for the discussion of the Tcl programming language
and tools that embed it, such as the Tk toolkit for the X window
system, expect, and Extended Tcl. Please note that postings of source
code to comp.lang.tcl do not get archived to harbor.ecn.purdue.edu - if
you want your code to be available from the User Contributions archive
you will need to make arrangements for someone to ftp it there. See
elsewhere in the FAQ for more details on the archive site.
The second would be to report problems, suggestions, new
ideas, etc. to the author. Email to
ouster@cs.berkeley.edu (John Ousterhout)
will get comments to the author of Tcl and Tk - to find the
email address of the authors of other Tcl/Tk based programs,
(see "tcl-faq/part3"), (see "tcl-faq/part4"), (see "tcl-faq/part5").
At least one short term archive of comp.lang.tcl is available for
anonymous ftp from ftp://csc.canberra.edu.au/pub/motif/comp.lang.tcl .
------------------------------
From: FAQ General information
VII. Are there any mailing lists covering topics related to Tcl/Tk?
There are quite a number of mailing lists which cover topics
relating to the Tcl community. As you begin one, if you will send
me information relating to the mailing list, I will add it below.
o VMS Tcl/Tk
Folks interested in Tcl on VMS in general can sign up to the
vms-tcl@src.honeywell.com mailing list for more details.
An archive for the mailing list is available at:
ftp://src.honeywell.com/pub/vms-tcl/mailinglist.archive
o Macintosh Tcl
W. Ross Brown <ross@bnr.ca> previously maintained a
mailing list for discussion of Tcl on the Macintosh. This list
is being phased out and users are encouraged to move to the new
Macintosh Tcl Mailing list. Here is it's announcement:
---
This Mailing List is devoted to the issues of Tcl on
the Macintosh. This includes (but not limited to) such
topics as ports of Tcl to the Mac (MacTcl), Tcl questions
relating only to the Mac (file I/O etc.), and porting of Tk to
the Mac.
A previous mailing list was supported by Ross Brown.
Ross, however, had to manage the list by hand. This list will
be managed by listserv software and will hopefully be more
active. If you were previously on Ross's mailing list you are
encouraged to switch to this new list. Ross's mailing will be
phased out shortly.
To get more information about the mailing list send a message
to "listserv@aic.lockheed.com" with the line "information mactcl" in
the body of the message (the subject is ignored).
To subscribe to the mailing list send a message to
"listserv@aic.lockheed.com" with the line "subscribe mactcl Your Name"
in the body of the message. Substitute 'Your Name' with
whatever your real name is.
Otherwise, all posting of articles to the mailing list
should be sent to mactcl@aic.lockheed.com.
o Tcl general discussion mailing list
For those USENET-deprived individuals who are thus unable
to read comp.lang.tcl, an email alternative is available.
If you get comp.lang.tcl you do not need to sign up for this list.
A service called "listserv" is being run out of CERN to forward
comp.lang.tcl postings via e-mail to people who don't have direct
access to the newsgroup. In addition, they are archiving the newsgroup
so you can retrieve old postings from them. Here is some more
information about the service:
1) send a mail to listserv@cernvm.cern.ch with one line in the body:
subscribe tcltk
2) see how it works (you will receive the mail with instructions from
listserv);
3) unsubscribe by a mail to listserv@cernvm.cern.ch with one line in the
body:
signoff tcltk
4) again, signing off will be confirmed by listserv
------------------------------
From: FAQ General information
Subject: -VII- Where can I find the FAQ and who do I contact for more
information about it?
I am going to attempt to keep a copy of this file up to date on
ftp://harbor.ecn.purdue.edu/pub/tcl/docs/tcl-faq.p0[1-5].gz .
Also, I will be posting it on a regular basis to at least comp.lang.tcl,
news.answers, and comp.answers.
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 lvirden@cas.org.
Many FAQs, including this one, are available on the archive
site ftp://rtfm.mit.edu/pub/usenet/news/answers . The name under which a
FAQ is archived appears in the Archive-name line at the top of the
article. For example, this part of the comp.lang.tcl FAQ is archived
as ftp://rtfm.mit.edu/pub/usenet/news/answers/tcl-faq/part1.Z .
There is also a mail server from which you can obtain a copy of
the FAQ. Send an email message to mail-server@rtfm.mit.edu or
archive-server@nic.switch.ch) with the word help in the body of the
message to find out how to use it.
Also, this FAQ is available from within gopher (by looking at
any one of the gopher holes presenting news.answers or FAQ lists), from
WAIS servers (such as the comp.lang.tcl.src), and probably other
resources as well. Let me know when you find the FAQ in new and
unusual locations so I can update this resource guide!
A great new resource access point for the FAQ is WorldWideWeb.
The Uniform Resource Locator id for the FAQ is:
http://www.cis.ohio-state.edu:80/hypertext/faq/usenet/tcl-faq/top.html
Be sure to check this one out!
Another great Internet resource are the archives of comp.lang.tcl.
For instance, there is at least one WAIS server which maintains indexes for
the past few days of comp.lang.tcl. Then a complete archive of the newsgroup
is available from
ftp://ftp.neosoft.com/pub/usenet-archives/comp/lang/tcl
A good place to start is
ftp://ftp.neosoft.com/pub/usenet-archives/comp/lang/tcl/+Index
which contains a list of all the filenames and subject lines of each of the
articles.
------------------------------
End of comp.lang.tcl Frequently Asked Questions (1/5)
*****************************************************
--
:s Great net resources sought...
:s Larry W. Virden INET: lvirden@cas.org
:s Personal: 674 Falls Place, Reynoldsburg, OH 43068-1614
The task of an educator should be to irrigate the desert not clear the forest.