                          Extended Tcl (TclX) 8.1.0
                          =========================

INTRODUCTION
============

    Extended Tcl (TclX), is a set of extensions to Tcl 8.1, the Tool Command
Language invented by Dr. John Ousterhout.  Tcl is a powerful, yet simple
embeddable programming language.  Extended Tcl is oriented towards system
programming tasks and large application development.  TclX provides additional
interfaces to the operating system, and adds many new programming constructs,
text manipulation tools, and debugging tools.

    TclX is upwardly compatible with Tcl 8.1.  You take the Extended Tcl 
package, add it to Tcl 8.1, and from that you get Extended Tcl.  (Tcl 
is not included in this distribution; please obtain it from ftp.smli.com
or ftp.neosoft.com).

   Support is also included for building a Tk 8.1 wish shell (wishx)
with the Extended Tcl command set and signal handling.

   Extended Tcl runs on most Unix-like systems and Windows 95/NT.

   While this TclX distribution is tested with Tcl 8.1 and Tk 8.1, it will
probably work with newer versions of 8.1.*-series Tcl & Tk with little or no 
changes.  Please check the Extended Tcl homepage at www.neosoft.com/tclx
for the latest release and information.

   Extended Tcl was designed and implemented by Karl Lehenbauer
(karl@NeoSoft.com) and Mark Diekhans (markd@Grizzly.com), with help
in the earliest stages from Peter da Silva (peter@NeoSoft.com).

   As with Tcl, all of Extended Tcl is freely redistributable, including for
commercial use and resale.


BUILDING TCLX
=============

   For instructions on how to build TclX on Unix and Unix-like systems,
see unix/INSTALL.  For Windows 95/NT see win/INSTALL.txt.

Tcl 8.1 and Tk 8.1 are required.

CHANGES IN TCLX 8.1
=====================
  o Compability with Tcl 8.1 and Tk 8.1
  o Added support of UniCode characters in most commands.
  o Use new Tcl regular expression facility.

FEATURES ADDED BY EXTENDED TCL
==============================

   Here is a summary of the features added by Extended Tcl.  For
more details on the commands and functionality provided by Extended
Tcl, see the manual page man/TclX.man.

    o Keyed lists, a type of list that provides functionality
      similar to C structures.

    o A command tracing facility for debugging and a performance profiler.

    o A shell, which provides an environment for developing and executing
      Tcl programs.  The command line is compatible with Unix shells.

    o Unix access commands provide access to many Unix system calls,
      including process management.

    o File control and status commands provide added facilities for accessing
      and manipulating open files.

    o File scanning facility that provides awk-like functionality.

    o Extended list manipulation commands.

    o Extended string and character manipulation commands.

    o Online help on Tcl, TclX and Tk commands.

    o X/PG based internationalization commands.

    o Support for event-oriented programming in non-Tk applications.

    o Advanced Tcl code library facility that is oriented towards building
      large applications.  It is compatible with standard Tcl auto-loading.

    o Additional general programming commands.

    o Restricted use in a safe interpreter.

    o Support for binary data in most commands.

    o Built-in support for Jan Nijtmans' Plus patch.
      http://home.wxs.nl/~nijtmans/plus.html

ON-LINE HELP
============

    There is a help system included with Extended Tcl.  It contains some
documentation on every command in Tcl, Extended Tcl and Tk.  You can invoke it
interactively from within Extended Tcl by typing "help".

    Once you bring Tcl up and have gotten it to pass all the tests,
try typing "help help" to learn how to use help.

    There is also a Tk based help program "tclhelp".

MANUAL PAGES
============

    Man pages in nroff/troff format are provided for all of Tcl and
the extensions in the directory tclX8.1.0/doc.  Start with the
TclX.n manual.

EXTENDED TCL VERSION NAMING
===========================

    Extended Tcl takes its version number from the corresponding
version of Tcl upon which it is based, with the addition of another
decimal number.  This release is TclX 8.1.0.

LINKING APPLICATIONS AND EXTENSION WITH TCLX
============================================

   There are three basic approaches to linking TclX into applications or
with other extensions:

   o Dynamically load the C code using either 'package require' or
     the 'load' command.

   o Linking TclX into an application based on the standard Tcl or Tk
     shells (tclsh or wish) or based on your own startup.

   o Build an application based on the TclX shells (tcl or wishx).

See the TclX_Init.3 manual page for more details.  The pkg_mkIndex does not
generate a pkgIndex.tcl file that works with TclX.  See TclX_Init.3 for
instructions on how to setup a pkgIndex.tcl file for use with the
package require command.   There is no need to dynamically load libtkx, its
only there to support wishx and applications that want wishx's signal handling.

TclX will build and install a pkgIndex.tcl that will be automatically found
by Tcl if TclX is installed in the same location.


SUPPORT FOR EXTENDED TCL
========================

    We are committed to providing continuing support for Extended Tcl.
Please send questions, bug reports, and bug fixes to:

         tcl-project@NeoSoft.com

    There is a mailing list for the development of TclX on Windows 95/NT.
To subscribe, mail majordomo@grizzly.com with the command "subscribe tclx-win"
in the body of the mail.  Send messages to this list at tclx-win@grizzly.com.


WHERE TO GET IT
===============

Extended Tcl 8.1.0 can be downloaded by anonymous FTP from:

   ftp.neosoft.com:/pub/tcl/TclX/tclX8.1.0.ar.gz

A contributed sources archive resides on ftp.neosoft.com.com.
A Frequently Asked Questions (FAQ) document exists in this archive.

Remember to mail Extended Tcl problems and questions to
tcl-project@NeoSoft.com not Dr. John Ousterhout.

THANKS
======

  A big thanks to all of the Extended Tcl users from all over the world who
have helped us debug problems and given us valuable suggestions.  A special
thanks to John Ousterhout, his students at Berkeley, and (more recently) his
teams at Sun Microsystems and Scriptics, for Tcl, Tk and all the support they
have given us.

Thanks to Michael E. Shorter <mike@globalware.com>, Christopher M. Sedore
<cmsedore@zombie.maxwell.syr.edu>,  Philip Chow <pchow@isgtec.com>, and
Kirk Benson <benson@healthcare.com> for their initial work on porting TclX
to MS Windows.

Thanks to Jan Nijtmans <nijtmans@wxs.nl> of Plus Patch fame for helping
to get shared library support working for several system.

NEOSOFT PROVIDES TCL SUPPORT, TRAINING, SOFTWARE, AND SERVICES
==============================================================

  NeoSoft, home of Extended Tcl co-inventor Karl Lehenbauer, provides 
commercial Tcl releases, support, training and consulting.  NeoSoft 
can be reached by sending electronic mail to info@NeoSoft.com or by 
phoning +1 (713) 968-5800.


