330 likes | 490 Views
The (Active) State of Tcl. The (Active) State of Tcl. Jeff Hobbs ActiveState Corporation. Agenda. Introduction What has happened… Developments in the Tcl community Developments of the Tcl/Tk core Future directions. About ActiveState.
E N D
The (Active) State of Tcl July 2002
The (Active) State of Tcl Jeff Hobbs ActiveState Corporation July 2002
Agenda • Introduction • What has happened… • Developments in the Tcl community • Developments of the Tcl/Tk core • Future directions July 2002
About 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 July 2002
You are here History 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 6.0 Sept 7.0 Sept 7.4 July 7.6 Oct 8.0 Aug 8.1 Apr 8.3 Feb … 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 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 July 2002
R.I.P You are here Recent History of Tcl 6. ActiveState introduces Tcl support and services (Feb) 1. Tcl’2K 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. Tcl’Europe 2001 (June) 3. Tcl’Europe 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) July 2002
Tcl 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 July 2002
Tcl Usage, Cont’d • 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 July 2002
Status As of 8th Tcl Conference • At O’Reilly 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 July 2002
Tcl Core Team • Formed in August 2000 with 14 charter members based on community voting to collectively manage development of the core July 2002
TCT: TIP Initiatives • TIP page for Tclhttp://www.tcl.tk/cgi-bin/tct/tip/ • 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@lists.sourceforge.net July 2002
Tcl/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 July 2002
The Maintainers… • Tcl (TIP #24): • Tk (TIP #30): • Other contributors as well July 2002
R.I.P Scriptics/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 July 2002
Tcl/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 July 2002
Tcl @ 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 Tcl’ers on staff • Wealth of scripting knowledge at ActiveState July 2002
ActiveState 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/TclDirect/ • 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/ July 2002
ActiveTcl 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 July 2002
Tcl Developer Xchange July 2002
Tcl Cookbook July 2002
ASPN 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 July 2002
ASPN 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 July 2002
Komodo IDE July 2002
ASPN 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 July 2002
In the Community… • The Tcl’ers 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@listserv.activestate.com • Lots of extension updates Check out the wiki! July 2002
Tcl/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 July 2002
Tcl/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 July 2002
Versions in use Pre-8.0 8.0 8.2 8.3 8.4 Response (out of 65) 0 8 1 64 6 User Poll: Versions July 2002
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 User Poll: Platforms July 2002
Tcl’Europe 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/ July 2002
Future 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 July 2002
(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 … Ideas in the Pipeline July 2002
Conclusion • 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 July 2002