Tcl HomeTcl Home Hosted by
ActiveState

Google SiteSearch
Main - Registration - Schedule - Tutorials - Info - Year 2006 Papers - Call For Papers

14th Annual Tcl/Tk Conference

September 24-28, 2007

Bourbon Orleans Hotel, New Orleans, Louisiana, USA

Important Information
Abstracts and proposals due June 15, 2007
Notification to authors July 7, 2007
Author materials due September 15, 2007
Tutorials start September 24, 2007
Conference starts September 26, 2007
Email Contact tcl2007@tcl.tk

One of the best reasons to attend the Tcl conference is the tutorial track. These sessions are presented by Tcl experts - people who write the packages, write the books, and develop applications on a daily basis. They share their knowledge of Tcl/Tk and the practical experience in developing large, robust applications. Whether you're new to Tcl or experienced, these sessions will help you develop your projects more quickly.

Monday Morning Monday Afternoon
Object Oriented Programming with [incr Tcl]
Intro to Tcl/Tk I
Weaving Multi-Threaded Applications
Intro to Tcl/Tk II
Tuesday Morning Tuesday Afternoon
Enough Expect to be Dangerous
Tcl/Tk Optimizing & Debugging
Expecting a bit more
Tcl/Tk For Gaming
Advanced Tk: GUI appearance
Object Oriented Programming with [incr Tcl] ( Ken Jones )
Object-oriented programming is a fundamental practice in modern software design, greatly contributing to code maintainability and reuse. And [incr Tcl] is the most widely-used extension for adding object-oriented structures to Tcl. Learn how to create and manipulate [incr Tcl] classes and objects, use protection levels to manage object access, and extend classes through inheritance and subclassing.
Intro to Tcl/Tk I ( Clif Flynt )
Tcl/Tk makes it large, complex tasks easy to complete.

Clif introduces the basics of Tcl and Tk including:

  • Syntax
  • Looping
  • Decision making
  • List processing
  • String processing
  • Regular Expressions
  • Procedures
  • Arithmetic operations
  • Buttons
  • Labels
  • Canvas
  • Grid
Weaving Multi-Threaded Applications ( Ken Jones )
A multi-threaded application can perform multiple tasks in parallel. Although Tcl's built-in event loop is an elegant and simple solution for tasks such as managing graphical user interfaces or handling interprocess communication (where threads are required in many other languages), there are still situations where a multi-threaded design is easier to implement and maintain. This module identifies appropriate uses of threads in Tcl applications, and describes the features of the Thread extension, including: thread creation; thread termination; joinable threads; inter-thread-messaging; shared variables; mutexes; condition variables; and thread pools.
Intro to Tcl/Tk II ( Clif Flynt )
Tcl/Tk makes it large, complex tasks easy to complete.

This session expands on the morning with:

  • Associative Arrays
  • Sockets
  • Using the event loop
  • Advanced canvas
  • Listbox
  • Menu
  • Building megawidgets
Enough Expect to be Dangerous ( Ken Jones )
Expect's unparalleled support for interacting with command-line and network applications have made it the industry standard for automated test applications. But its features also make it an excellent tool for managing interprocess communication and extending legacy applications. As one developer said, "Expect can make easy all sorts of tasks that are prohibitively difficult with anything else." This tutorial concentrates on the four core Expect commands used in virtually all Expect programs, as well as showing tips and tricks for overcoming common Expect problems.
Tcl/Tk Optimizing & Debugging ( Clif Flynt )
All languages have tricks and tweaks that help make code run faster.

Clif will discuss:

  • using tkcon to examing and modify a running program.
  • using trace and info level to record program behavior.
  • other debugging techniques.
  • using Tk's option command to speed up a GUI.
  • using loops and procs for more speed.
  • using string map instead of regsub.
  • using faster versions of common commands.
  • using time to find where things are slow.
  • using critcl to recode compute intensive sections in 'C'.
Expecting a bit more ( Ken Jones )
So, you've had a taste of Expect, and you like it. You're able to create an Expect script that interacts with an application. You've discovered the use of *exp_internal* to debug tricky interaction problems. But now you're ready for more. Well, this tutorial shows you the ins and outs of handling multiple applications simultaneously in an Expect script, as well as juggling user interaction at the same time.
Tcl/Tk For Gaming ( Clif Flynt )
Programming should be fun! Fun projects make fun programming.
Tcl is a great tool for one-evening projects like a simple arcade game, PvP networked strategy games, or even FirstPerson Shooters.

Clif will provide a focused look at:

  • using arrays to structure data.
  • canvas features like binding, introspection, and redrawing.
  • socket communications.
  • the snack extension (for sounds & music).
  • merging C with Tcl for speed.
  • providing pause-free runtime with after and update.
Advanced Tk: GUI appearance ( Jeff Hobbs )
There's a big difference between a quick and dirty GUI and a good looking professional GUI. Jeff will explain the newer features Tk has added to create a solid GUI you can be proud to send to a customer, including:
  • Controlling the toplevel
  • Themed widgets (tile/ttk)
  • 8.5 widget enhancements
  • Subtle platform differences
Some time will be alloted for hands-on work. A laptop is recommended for this course (latest Tk binaries will be provided).

Tutorial Information

Contact Information

tcl2007@tcl.tk