Tcl Logo Image TclTk WorkShop July 1996 Tcl Logo Image

These are a summary of the notes I took at the Tcl Workshop in Monterey July 10-13 with regard to Tcl Futures and Development Projects

Errors and Omissions mine.

This is what The conference t-shirt looks like.

Tcl Futures and Status

Update on Tcl Project- John Ousterhout

What did over Last Year

What didn't do that said would do

People

Release Plans

Planning 5 releases of Tcl and 4 of Tk over next year or so.
Tcl7.6 + Tk4.2
Tcl7.6plug + Tk4.2plug
Tcl7.7 + Tk4.3
Tcl8.0

Other Projects

Making Money

Publicity developments

Other

SpecTcl - Why not Use
About 40 people admitted to downloading and attempting to use SpecTcl. None continue to use now. Reasons by frequency were:
Internationalisation Difficult areas

Tcl/Tk plugin - Jacob Levy

Implementation of Tcl/Tk as Netscape 3.0 Plugin. Provide safe environment to display better effects or applications within. Leads to idea of "tcllets".

How Use

Status

Future Extensions

see http://www.smli.com/research/tcl/plugin/

In Search of the Perfect MegaWidget- Stephen Uhler

Description of hooks in Tk4.2 to allow full support of Megawidgets. A Megawidget is Widget composite implemented in Tcl which behaves exactkly like a builtin widget - user doesn't have to know or care that its not a core 'builtin'.

These may be wanted for

MegaWidget Solution

Properties

Changes required

Implementation

Conclusion


On the Fly Byte Compiler for Tcl - Brian Lewis

Creating a new compiler interpreter for Tcl Code: Compact Code, No reparsing, less runtime work

Tcl Team HotList

These are items the Devt team has as its main priorities. I've ordered these by community perception of importance from vote tallies.

Suggestions for Development Areas

These are suggestions/wishlist developement areas from the floor. I've ordered them by number of votes.
Note that many of these don't require core modifications - they need not be done by the Tcl Devt team at Sun.

Tcl

Tk


Other Interesting Work (that I captured Notes on)

Tcl Web Tools - Stephen Uhler

Described a library Package that can be used to suppport HTML processing with Tcl/Tk. Available from ftp://ftp.sunlabs.com/pub/tcl/html_library-0.3.tar.gz

DPTcl- Gerald Lester

Under Development.
A Tcl only implementation of the TclDP extension (for portability) using the new Tcl7.5 socket calls. Similar API but not directly interoperable with applications using it.
Being Done by Gerald Lester gwl@cpu.com
Mark Roseman roseman@cpsc.ucalgary.ca
and Steve Wahl.

Neoscript - Karl Lehenbauer

Tcl extension embedded in Web server providing a whole lot of capability on top of HTML. See http://www.NeoSoft.com/neoscript/docs/overview.html

SWIG - David Beazley

Simplified Wrapper and Interface Generator. Generates bindings from C/C++ code for any interpreted Language (Tcl, Python, ... ). http://www.cs.utah.edu/~beazley/SWIG

TKsh - Jeffrey Korn

Tcl and Tk embedded in Ksh93. Use Tcl or Ksh builtins, Augment Ksh with GUI capabilities. Shared variable space between embedded Tcl and Ksh. Implemented by mapping lowlevel Tcl Framework API onto Ksh93 equivalents and using Tcl/Tk code as is on top of that. See http://www.cs.princeton.edu/~jlk/tkshproj

CGI programming with Tcl - Don Libes

Don opened this talk saying: I am going to refute the assertion made by Adam Sah in the previous talk (and John Ousterhout, yesterday) when they said: CGI scripting is too hard. While preparing this talk, I looked around for a short statement about CGI and why people find it hard. I found this one on HTML - it's close enough...

My own feelings are much more positive...

The talk described how to generate HTML from Tcl scripts. Several examples of CGI scripts in Tcl were shown - they were short and readable. Using the idea of an FAQ as an example, Don demonstrated that it is useful to generate static pages as well. Using these approaches, problems such as maintenance of URLs and translation between different formats become trivial.

Don described a freely-available Tcl library to support this work. See Don Libes and Writing CGI scripts in Tcl.

Plans/Directions for Contrib Archive - Karl Lehenbauer

See http://www.neosoft.com/tcl.

TeamRooms - Mark Roseman

Tcl Based integrated groupware application for Macintosh, Windows, and Unix that provides "network places" for users to congregate and collaborate.
See http://www.cpsc.ucalgary.ca/projects/grouplab/teamrooms/.

Caubweb - John LoVerso

A personal Web proxy server that provides user and server surrogates for conditions of variable connectivity. Provides server hotwiring of a browser's cache, among other things.
See http://www.osf.org/www/dist_client/presentations/wip-tclws96/.
(use the "Next" link to move into the slide pages)

Tk Interoperability Conference

Tk in other Languages (e.g. Perl, Python, Scheme)
Initial major concern was embedding of Tk in other languages but that seems to be well enough addressed currently with some relatively minor problems and slightly ugly hacks (according to the Perl, Python people attending). The architecture being built for bytecode compiler should provide remaining hooks and make porting integration process much easier. This turns out to be a superset of the Perl wishlist and appears also support Python and Scheme to the level required.
Tcl and Objects
[incr Tcl] supports its OO extension by adding namespace support to (a modified version of) the Tcl Core. This is something he needs to get out of. Namespaces will be supported in Tcl with the compiler release but its probable that a lighter weight hook mechanism in the right places is what is needed to provide a vehicle for Object extensions (e.g Namespaces and OOP separately) without needing to beat on Core code. This minimal hookset needs to be identified (features and geography) and provided simply and rapidly (Michael McLennan undertook to follow through on this).

Tcls notion of namespaces will probably be much simplified from iTcls: disallowing nested namespaces (i.e limit to local or global) or allow nesting but disallow shared namespaces....

Portability across Platforms
Many Issues such as Native Look and Feel, Printing i/f, Std MegaWidget Set, Font Abstraction, Portable filesystem access, Portability of extension code. Many of these are already addressed: e.g. Menus, Fonts, Colors, Virtual Events, Native Widgets and provision of Some Common Dialogs. Areas that are in the process of being cleared up include FileManipulation commands and Cursors.

Areas that are felt to be important but that are currently not scheduled include Internationalisation, Common C Extensions API (it was felt that this would evolve naturally as the ports are worked on), Native Printing support, Common Drag and Drop API, OLE/ActiveX embedding on MSWindows and some interface for a help system (both balloon style help and access to external help viewer/data).

Thread Support.
A small but vociferous minority insisted on some form of thread support being an important consideration for Tcl even if only as a checkbox item. This evolved to a realisation that Thread Safety (ability to run multiple interps in multiple separate threads without collisions) was probably the minimal desirable and maximum possible. Its unclear who would do this as the Core Tcl team already has more higher priority items than it can handle. A Tcl community contribution is probably the only way this will happen.
Other
Theres probably a need for a list of Items that the contrib community could provide and some forum for provision of and discussion of specifications for these things.
Once again for any contrib work to be included in the core it maximises its chances if it:

Hops (hops@sco.com) $ Last Modified: $Date: 1996/07/20 18:44:08 $: