UPDATE: Tcl'97 Tcl Update Talk 
Author Message
 UPDATE: Tcl'97 Tcl Update Talk

This message is an attempt to summarize John's big talk at Tcl'97
about what happened (and wil happen) with Tcl for the conference.
He's talking as I write this, so it's as fresh as you can get.

7.5p1/4.1p1 was the current release as of Tcl'96

7.6/4.2 added dialogs and some other minor stuff

The predicted 7.6plug/4.2plug && 7.7/4.3 && 8.0 were merged into 8.0

Tcl8:
Bytecde compiler: 2-20x speedup
Namespaces
Binary data and I/O (integrated into regular commands)
        bin data won't be allowed *everywhere* in Tcl
serial devices for Unix & Windows
new event notifier: coexist with Xt
random numbers (in expr)
windows registry (as a package)
HTTP support (as a package)
safe-tcl improvements

Tk8:
native LAF for Windows/Mac
        no core support for selecting LAF, but you can do it yourself
        (requires some hacking)
        by vote, it was shown that the great majority require just
        good LAF on a given platform, rather than consistent (Motif) LAF
        on all platforms (about 100+ vs 10)
new font implementation
new menu system
application embedding (incomplete, except under Unix)
image support in text widgets
safe-tcl support

question arose about some new platform specific packages (ie - registry)
        response was that in general Tcl/Tk tries to find the best
        middle ground to support (like common file dialogs).  However,
        sometimes there are such important platform specific features
        (like the registry), that Tcl should provide access to it in
        order to not die due to its limitations of the least common
        denominator on all platforms.

Tcl/Tk8 release status:
B2 release June 30, 1997
Final release expected early August

Primary development release vote: (what version is your primary version)
8.0:            12
7.6/4.2:        80
7.5/4.1:        15
7.4/4.0:        8
earlier:        1
Number who have to maintain earlier 3rd party extension software: 20

Why note upgrade (to 8.0):
no need:                2
product life cycle:     20
incompats:              35
docs (lack of):         5
other (stability, win mem leaks):       10

Major extension poll to upgrade to 8.0:
TclX:           ready
incr Tcl:       end of August (it will be dynamically loadable)
BLT:            almost
expect:         works now, waiting for better obj/bin support in core
syb/oratcl:     ready, but uses old (non-obj) interface
                (obj interface late fall)
Tix:            works, but not obj'ed
DP:             getting there
ObjectTcl:      late fall

Browser Plugin:
1.0 released Oct 96
2.0 adds man new features:
        customizable security policies
        access to frames
        HTTP access
        JavaScript access
        beginnings of trust models
Currently a2, b1 imminent
final release expected september/october (month or two after 8 goes final)
about 100,000 downloads of plugin
2.0 plugin runs outside the web browser (with small stub inside browser)
allows substitution of your own wish

SpecTcl GUI Builder:

1.0 released January 1997
1.1 expect July 1997; many bug fixes
Overall results disappointing:
        took too long to complete
        not enough functionality
        didn't work with existing apps
        not clear what to do:
                already too easy to create GUIS
Will discontinue development/support after 1.1

Other Projects:
WebTk authorin system: beta release Dec 96
Web server:
        written entirely in Tcl
        embeddable, for management apps
        uses scotty to manage legacy SNMP devices
        serves sunscript.sun.com
        recently released

FTP Stats:
5000-8000 downloads/week from fp.sunlabs.com of Tcl (not Tk)
expecting more when 8.0 goes final
last year: 2000/week
Platform breakdown (by ftp download):
        UNIX:           50%
        Windows:        40%
        Macintosh:      10%
Plugin 1000-2000 download/week (>100,000 total)
Total worldwide developer community: 500,000?

During polling it was noted:
        most people use Unix for primary development, but most
        have Windows as a supported platform
        about a dozen switched to Windows for primary development,
        none switched to Unix
        win32s has little need (2 hands), 8.0 might be the last
        version to support win32s (a pain).

What they didn't do: (all are remaining on "the list")
Megawidgets
image revision
text improvements
threads
de{*filter*}
profiler
drag and drop
OLE/ActiveX support

The SunScript Saga:
Goal: build a business community around Tcl and Tk
Summer/Fall 96: talked with SunSoft and JavaSoft.
        Not a good fit
November 96: Eric Schmidt (former Sun CTO)
        suggests and independent business group
Winter 96-7: prepare SunScript business plan
Feb 97: business plan approved, began recruiting
April 30, 97: SunScript announced

Bad News:
April 97: Eric left for Novell
April-May 97: without Schmidt, management support waned
June: decision was made to drop business group, do development

Looking forward:
Bad News: commercial efforts on hold
        no selling of products
        no commercial support

        projects continue, headcount = 14
        new efforts in Java integration
        ALL SOFTWARE WILL BE FREE
                plugin
                spectcl
                web server
                java tools (this includes Jacl)

Future:
Tcl and Java:
Tcl and Java are symbiotic, not competitive
Java for system programming
        create components, complex algorithms and data structures
        cannot succeed without scripting language
Tcl for scripting
        gluing, sytem integration, component assembly
        cannot succeed without a good component language
SunTcl goal: integrate Tcl and Java to provide best of both worlds

Bring Java to Tcl:
Use JRE to embed Java virtual machine in Tcl apps
Use JDK 1.1 reflection to find Java classes, invoke methods:
        set o [java::new string foo]
        set o2 [$o concat bar]
Provide new Java class to invoke scripts, define new Tcl commands:
        i = new.Interp();
        i.Eval("button .b");
        i.CreateCommand("thread", threadCmdObj);
This will provide smooth integration over to Java (from C or Tcl)

Tcl/Tk as Universal Container:
embed JavaBeans components in Tcl/Tk apps, invoke from Tcl
also embed OLE/ActiveX components
use Tcl as glue between JavaBeans and ActiveX
the goal for Tcl is to glue EVERYTHING

Bring Tcl to Java:
reimplement Tcl interpreter in Java
derived from Cornell Jacl work
Same Tcl-level facilities as when Java is embedded in Tcl
allows Tcl commands to be used in 100% Pure Java environment:
        web browsers
        Java stations
speed will be as good as the JIT compilers

Tcl/Tk 8.1 releases:
Goal: finish by January 1998
Main purpose: compiler consolidation
        finish object conversion of Tcl
        convert Tk to use compiler objects
        fix bugs
A few additional features
        INTERNATIONALIZATION (Unicode done with UTF-8)
                99% backwards compatible (\x.. not OK)
        send for windows/mac
        new modular parser for Tcl scripts
                tcl scripts that parse tcl scripts
                better introspection

Other possible changes:
thread support          60
megawidgets             15
drag and drop           25
OLE/ActiveX support     10
Additional widgets      70 (people are ignorant of the uses of megawidgets)
        combobox
        tree widget
        notebook tabs
printing support        40
rewrite of regexp (I18N, binary data, Perl features)            15
text widget cleanup (smooth scrolling, etc)                     5
canvas overhaul (dash patch stuff)                              15
image overhaul (more formats, optional dithering, etc)          40
split core into packages                                        45
continue supporting win32s?                                     1
continue supporting Mac?                                        10
CGI (core support)                                              2
suport extensions                                               25
plus patches                                                    5

we now stop for lunch....

--

  Software Engineer, Oregon R&D        office: 541.683.7891
  CADIX International, Inc.            fax:    541.683.8325
             URL: http://www.*-*-*.com/ ~jhobbs/



Sun, 02 Jan 2000 03:00:00 GMT  
 
 [ 1 post ] 

 Relevant Pages 

1. IEEE VITAL Update Report - DAC'97 Bird's-of-a-Feather Session

2. TOOLS Asia'97 Submission Deadline Extended/Conference Information UPDATE

3. TOOLS Asia'97 Submission Deadline Extended/Conference Information UPDATE

4. UPDATE: Nov 28 - Developing Distributed Applications - Ada-Belgium'97

5. TOOLS Asia'97 Submission Deadline Extended/Conference Information UPDATE

6. UPDATE TCL Compiler: the binaries of httpd.tcl the TCL web-server are available

7. Tcl/Tk 'update idletasks' command

8. Tcl-2004 Update: More food and Tcl jobs

9. Tcl'2003 Update

10. Compile Tcl/tk but doesn't seem to updated my system

11. Tcl/Tk 'update idletasks; command

 

 
Powered by phpBB® Forum Software