Presentation is loading. Please wait.

Presentation is loading. Please wait.

July 2002 Tcl 8.4 Overview. July 2002 Tcl 8.4 Overview Jeff Hobbs ActiveState Corporation.

Similar presentations


Presentation on theme: "July 2002 Tcl 8.4 Overview. July 2002 Tcl 8.4 Overview Jeff Hobbs ActiveState Corporation."— Presentation transcript:

1 July 2002 Tcl 8.4 Overview

2 July 2002 Tcl 8.4 Overview Jeff Hobbs ActiveState Corporation

3 July 2002 Agenda Introduction Development timeline New features Steps to 8.4.0

4 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

5 July 2002 8.0 Aug History of Tcl 198819891990199119921993199519971998 100100010,000 1M ? 100,000 2.Open source distributions from U.C. Berkeley: Easy GUIs under Unix Extensible applications 2.Open source distributions from U.C. Berkeley: Easy GUIs under Unix Extensible applications 3.Tcl enhanced at Sun Microsystems: Windows, Macintosh ports Web/Internet support Java support 3.Tcl enhanced at Sun Microsystems: Windows, Macintosh ports Web/Internet support Java support 4.Scriptics formed: Evolve and extend Tcl platform Create development tools 4.Scriptics formed: Evolve and extend Tcl platform Create development tools 1.Tcl created as general-purpose command/scripting language by John Ousterhout 500,000 1994199919962000 6.Scriptics/Ajuba Acquired by Interwoven (Nov.) 2001 7.ActiveState introduces Tcl support and services 5.Tcl Core Team formed (August) 6.0 Sept 7.0 Sept 7.4 July 7.6 Oct 8.1 Apr 8.2 Aug 8.3 Feb You are here … …

6 July 2002 Recent History of Tcl 5.Scriptics/Ajuba acquired by Interwoven; Tcl/Tk core moves to SourceForge; TclPro open sourced (Nov.) 6.ActiveState introduces Tcl support and services (Feb) 4.Tcl Core Team formed (August) 20002001 8.3.3 May 8.3.0 Feb 8.3.1 Apr 8.3.2 Aug 8.4a1 June 8.4a2 Nov 1.Tcl’2K in Austin (Feb) 2.Scriptics becomes Ajuba (May) 7.Tcl’Europe 2001 (June) 9.8 th Tcl Conference (July) 11. ActiveTcl 8.3.4.3 (July) ( 8.4.0 ) 3.Tcl’Europe 2000 (June) R.I.P You are here 8.4a3 July 2002 8.4b1 8.4a3 Mar 8.3.4 Oct 10. ActiveState TclPro (Dec) 12. ActiveState TclPro 2.0 beta (July)

7 July 2002 Tcl 8.4 Development: TIPs First time the TIP process has defined a Tcl release http://www.tcl.tk/cgi-bin/tct/tip/ http://www.tcl.tk/cgi-bin/tct/tip/ TIPs are intended to guide and document development on the core –Initially rough, but process has improved Of the 100+ TIPs, most targeted 8.4 Many thanks to the maintainers and contributors

8 July 2002 Tcl Changes 20+% improved performance over 8.3 Completely new Virtual File System (VFS) Improvements to numerous commands 64-bit integer and file system support

9 July 2002 Minor command enhancements array statistics array names arrayName ?mode? ?pattern? interp recursionlimit regsub ?switches? exp string subSpec ?varName? unset ?-nocomplain? ?..? ?name...? expr ‘eq’ and ‘ne’ for true string comparisons glob -tails pattern... namespace exists info script ?filename?

10 July 2002 Updated list commands New lset command –Efficient way to replace elements lindex list ?index...? –Index into nested lists easily lsearch -all -ascii -decreasing -dictionary -increasing -inline -integer -not -real -sorted -start

11 July 2002 ‘file’ enhancements Virtual File Sytem –Allows hooks into all FS functionality Full support for 64-bit file systems file normalize file separator file system file link

12 July 2002 Tcltest 2.0 Greatly enhanced ‘test’ command Supports multiple error match types Runs multi-process for robustness 100% backwards compatible with v1.0

13 July 2002 Serial Port Control fconfigure serial -mode baud,parity,data,stop -handshake type -queue -timeout msec -ttycontrol signalMap -ttystatus -xchar charPair -pollinterval msec -sysbuffer sizeList fconfigure -lasterror

14 July 2002 64-bit “wide” integers Uses int64 or long long Not completely transparent 32/64-bit barrier –expr wide(…) ::tcl_platform(wordSize) binary command support –binary format wW... –binary scan string wW...

15 July 2002 Changed behavior fcopy now respects encodings of its channels format %ld and likewise treat argument as wide integer scan %ld and likewise no longer ignore the field width specifier source treats the byte 0x1a (^Z) as an EOF char on all platforms subst treats break and continue during command substitution differently tcl_traceExec and tcl_traceCompile only available with TCL_COMPILE_DEBUG build.

16 July 2002 Updated ‘trace’ command trace add trace remove trace info Command tracing now possible

17 July 2002 Formalized ‘memory’ command Useful for debugging memory problems Requires compilation with TCL_MEM_DEBUG memory active memory init memory onexit memory tag Removed memory display

18 July 2002 Tk Changes Widget styling support (TIP #48) New widgets Significant widget enhancements Improved I18N and L10N –Improved XIM and IME support bell ?-nice? –First new feature of 8.4

19 July 2002 New Widgets spinbox –Builds on the entry widget –Fast, feature rich and efficient panedwindow –Part widget, part geometry manager labelframe –Separate from frame to not bloat it

20 July 2002 New Tk subcommands clipboard get image inuse photo transparency –Now we can properly animate GIFs tk caret window ?-x x? ?-y y? ?-height h? –For controlling global caret –Also directs placement of IME/XIM window

21 July 2002 ‘text’ Changes New undo/redo support with ‘edit’ –-undo, -autoseparators and -maxundo option ‘get’ takes multiple range pairs ‘delete’ takes multiple range pairs –Atomic deletes New virtual events – >

22 July 2002 ‘wm’ Changes wm stackorder –View/Control the stacking order of toplevels wm attributes –For controlling the platform specific aspects of toplevels –Implementations for Mac and Windows May get Unix features in the future –Finally: topmost functionality on Windows

23 July 2002 Compound widgets Allow both image and text to be displayed simultaneously –Orientation can be controlled with -compound option Support for all button types and label widget, as well as in menus

24 July 2002 Updated widgets button -disabledbackground – disabledforeground -compound entry -state readonly -readonlybackground checkbutton -compound -overrelief listbox -disabledforeground -state - activestyle menu add -compound menubutton -compound radiobutton -overrelief

25 July 2002 Asynchronous padding Allows left/right or top/bottom asymmetry in padding (-padx -pady) Applies to widgets … –frame –toplevel –labelframe And geometry managers … –pack –grid grid columnconfigure master index -uniform grid rowconfigure master index -uniform

26 July 2002 Tk dialog changes tk_getOpenFile -multiple -message tk_getSaveFile -message tk_getOpenFile and tk_getSaveFile are different in whether the returned file name includes the extension.

27 July 2002 Removed Tk Privates tkPriv tk[A-Z]* Replace with ::tk::Priv and tk::… –Support for ‘exporting’ the private commands –… but don’t use them anyways

28 July 2002 Steps to 8.4.0 Testing, testing, testing …

29 July 2002 Where to get it Tcl Developer Xchange –Points to everything –http://www.tcl.tk/ ActiveState ActiveTcl –Binary distributions with extensions –http://www.activestate.com/Products/ActiveTcl/ SourceForge –Core source distributions –http://tcl.sourceforge.net/


Download ppt "July 2002 Tcl 8.4 Overview. July 2002 Tcl 8.4 Overview Jeff Hobbs ActiveState Corporation."

Similar presentations


Ads by Google