Title: Tcl'Europe 2002 State of Tcl
1The (Active) State of Tcl
2The (Active) State of Tcl
- Jeff Hobbs
- ActiveState Corporation
3Agenda
- Introduction
- What has happened
- Developments in the Tcl community
- Developments of the Tcl/Tk core
- Future directions
4About ActiveState
- ActiveState provides multi-language,
cross-platform software services - Tcl, Perl, PHP, Python, XSLT
- Linux, Solaris, Windows, HP-UX, AIX,
- We make it easy to use new technologies
- Web Services and .NET
- Mission Make Programming Easier
- Our IDEs
- Active distributions
- ASPN
5History of Tcl
7. ActiveState introduces Tcl support and services
1. Tcl created as general-purpose
command/scripting language by John Ousterhout
- 4. Scriptics formed
- Evolve and extend Tcl platform
- Create development tools
8.0 Aug
6.0 Sept
7.0 Sept
7.4 July
7.6 Oct
8.1 Apr
8.3 Feb
1988
1989
1990
1991
1992
1993
1995
1997
1998
1994
1999
1996
2000
2001
8.2 Aug
5. Tcl Core Team formed (August)
- 2. Open source distributions
- from U.C. Berkeley
- Easy GUIs under Unix
- Extensible applications
6. Scriptics/Ajuba Acquired by Interwoven (Nov.)
- 3. Tcl enhanced at Sun Microsystems
- Windows, Macintosh ports
- Web/Internet support
- Java support
1M ?
100
1000
10,000
100,000
500,000
6Recent History of Tcl
6. ActiveState introduces Tcl support and
services (Feb)
1. Tcl2K in Austin (Feb)
2. Scriptics becomes Ajuba (May)
9. 8th Tcl Conference (July)
( 8.4.0 )
8.3.1 Apr
8.3.2 Aug
8.3.3 May
8.4a3 Mar
2000
2001
2002
8.4a3 July
8.3.0 Feb
8.4a1 June
8.4a2 Nov
8.3.4 Oct
8.4b1
7. TclEurope 2001 (June)
3. TclEurope 2000 (June)
10. ActiveState TclPro (Dec)
11. ActiveTcl 8.3.4.3 (July)
5. Scriptics/Ajuba acquired by Interwoven Tcl/Tk
core moves to SourceForge TclPro open sourced
(Nov.)
4. Tcl Core Team formed (August)
12. ActiveState TclPro 2.0 beta (July)
7Tcl Usage
- Tcl usage is still growing
- Used extensively for mission-critical
applications - Cisco, Motorola, Lucent, Nortel, etc.
- Automated hardware testing
- Coordinate different pieces of test equipment
- Tcl soon to be standard on all Cisco routers
- AOL Digital City, Travelocity
- Dynamic Web content
- Integrate information from different sources
- Content developers are not programmers
8Tcl Usage, Contd
- More mission-critical applications
- NBC
- Digital broadcast control system
- Mix programming content, control transmission
through satellites to local stations - Pixar
- Used in animation tools (RenderMan software)
- Technical directors write Tcl scripts to animate
characters - Shell Oil
- Real-time control for offshore oil platforms
- Coordinate, manage various systems
9Status As of 8th Tcl Conference
- At OReilly Open Source Convention,San Diego,
July 2001 - Tcl/Tk 8.3.3 was the stable version (8.3.x now
standard in Linux distributions) - 8.4a3 was just released
- ActiveState was just establishing with Tcl
expertise
10Tcl Core Team
- Formed in August 2000 with 14 charter members
based on community voting to collectively manage
development of the core
11TCT TIP Initiatives
- TIP page for Tcl http//www.tcl.tk/cgi-bin/tct/ti
p/ - TIPs are intended to guide and document
development on the core - The focus is on new or changing features, not
bugs - Voted on by the TCT following community
discussion using the TYANNOTT process - Currently over 100 TIPs
- Divided into process, informational project
TIPs - TCT discussion is open on the public mailing
list tcl-core_at_lists.sourceforge.net
12Tcl/Tk Maintainers
- Tcl/Tk maintainers are separate from the TCT
- Maintainers oversee a specific area of the core,
as defined in TIP 16 for Tcl and TIP 23 for Tk - They assist, but are not solely responsible for,
fixing bugs and adding documentation in their
area - They are responsible for reviewing code and
approving code changes to their area - Open to anyone willing to learn the core
- New volunteers always welcome
13The Maintainers
- Tcl (TIP 24)
- Tk (TIP 30)
- Other contributors as well
14Scriptics/Ajuba
- Scriptics became Ajuba Solutions in May 2000
- New focus as a B2B infrastructure company
- Interwoven content management company in need of
B2B - Ajuba assimilated on Nov 1, 2000
- Tcl/Tk moved to SourceForge http//tcl.sf.net/
- Further open source work not continued at
Interwoven - Most other projects at Ajuba moved to SourceForge
15Tcl/Tk at SourceForge
- SourceForge provides a wealth of services for
open source projects - Bug and patch database
- Mailing lists
- CVS repositories
- File server
- Web pages
- Managed by TCT and Tcl/Tk maintainers
- Not the Tcl Developer Xchange
16Tcl _at_ ActiveState
- ActiveState established 1997
- Programming for the People
- Used to be Perl specific
- Well known ActivePerl distribution
- Added Python and XML/XSLT expertise in 2000
- Jeff Hobbs hired in Feb 2001
- Andreas Kupries follows soon after
- Other knowledgeable Tclers on staff
- Wealth of scripting knowledge at ActiveState
17ActiveState and Tcl
- ActiveState provides the Tcl community with
- Improvements to open source Tcl core
- Host of the Tcl Developer Xchange
- Commercial support infrastructure
- http//www.ActiveState.com/Products/Enterprise/Tcl
Direct/ - Professional services for Tcl (TclDirect)
- High quality development tools
- ActiveTcl
- http//aspn.ActiveState.com/ASPN/Tcl/
- ASPN Tcl (TclPro Komodo IDE)
- http//www.ActiveState.com/Products/ASPN_Tcl/
18ActiveTcl 8.3.4.3
- Based on the 8.3.4 Tcl core
- Enhanced with several popular extensions
- incr Tcl, TclX, expect, tcllib, Bwidgets,
iwidgets, tktable, tkcon - A standard batteries-included distribution for
Tcl users - Code repository (still) in the works
19Tcl Developer Xchange
20Tcl Cookbook
21ASPN Tcl TclPro More
- Introduced December 2001
- Resuscitated TclPro as a commercial quality
development environment - Debugger source-level debugger with nice GUI
- Checker find errors without running application
- Wrapper create self-contained applications for
distribution - Compiler protect your source code
22ASPN Tcl Komodo
- An IDE for scripting languages
- Mozilla framework based
- Cross-platform (Windows Linux)
- Modern IDE features
- Several unique Tcl editing features
- Tight integration of TclPro tools with Komodo
- Komodo 2.0 in development
23Komodo IDE
24ASPN Tcl Future
- Continuing development of Tcl tools
- TclPro 2.0 now in beta
- Enhanced debugger with integrated checker
- Code coverage and hot-spot analysis tool
- Added user-friendly GUIs to Wrapper and Compiler
- Checker updated for 8.4 (and corrected for 8.3)
- GUI Builder in development
- Based loosely on SpecTcl
- Will be integrated with other tools
25In the Community
- The Tclers Wiki has increased in activity
- http//wiki.tcl.tk/
- Now with interactive chat
- The Tcl Developer Xchange official URL
- http//www.tcl.tk/
- http//tcl.ActiveState.com/
- Tcl-URL! continues to provide weekly news
- http//www.ddj.com/topics/tclurl/
- Or subscribe to tcl-announce_at_listserv.activestate.
com - Lots of extension updates
Check out the wiki!
26Tcl/Tk Today
- Download rate steady
- Windows 55
- Unix 40
- Mac 5
- Only patch releases since 2000
- Stable release now at 8.3.4
- Completely new I/O core (added in 8.3.2)
- High degree of stability
- Improved locale support in Tk
- Ports now exist for Windows/CE and Palm
ActiveTcl downloads
- Data point
- 2x ActivePython d/ls
- 1/7th ActivePerl d/ls
27Tcl/Tk 8.4
- Development release, now at 8.4b1-rc
- Has just been feature-frozen
- New spinbox, labelframe, panedwindow widgets
- Several core feature enhancements
- VFS, lset, command tracing
- Significant work on performance
- Near or better than 8.0, with unicode and thread
safety. - Inclusion of numerous TIPs
- More later in 8.4 overview
28User Poll Versions
- Versions in use
- Pre-8.0
- 8.0
- 8.2
- 8.3
- 8.4
- Response (out of 65)
- 0
- 8
- 1
- 64
- 6
29User Poll Platforms
- Develop/Deploy
- Windows
- Macintosh OS 9
- Macintosh OS X
- Linux
- Solaris
- HP-UX
- Other unix
- Response (out of 65)
- 60/30
- 0/2
- 0/1
- 50/50
- 8/30
- 6/10
- 8
30TclEurope 2001
- Hamburg, June 8-9, 2001
- 14 Original papers and tutorials
- From using Tcl with Cobol to Tcl on the
Web to Tcl on a PDA - Thanks to Carsten Zerbsthttp//www.tu-harburg.de
/skf/tcltk/
31Future Directions
- The core is guided by community input
- Anyone can write a TIP
- Anyone can be a core maintainer
- What issues are most pressing?
- ActiveState will continue to work with the Tcl
community and build more Tcl related products - Demos to follow
32Ideas in the Pipeline
- (More) improved Tcl performance
- Archive file support (.jar/.zip)
- Larger source / binary distributions
- Tcl Installer
- Stand-alone executable support in core (wrap)
- 64-bit overhaul
- Smaller, modular core
- Drag Drop
- Windows Tk Performance
- Printing support
- Tk abstraction layer (TkGS)
- Megawidgets (roll your own)
- New Widgets
33Conclusion
- Tcl core is robust, feature-rich
- and still pushing the boundaries
- Future emphasis on packages and modularization
- Community is the key to an even more successful
future