October 9-13, 2006
Holiday Inn Select
Naperville, Illinois USA
|
Important Information
|
Abstracts and proposals due |
June 30, 2006 |
Notification to authors |
July 31, 2006 |
Author materials due |
September 30, 2006 |
Tutorials start |
October 9, 2006 |
Conference starts |
October 11, 2006 |
Email Contact |
tcl2006@tcl.tk |
|
We are pleased to announce the 13th Annual Tcl/Tk conference (Tcl'2006),
sponsored by Noumena Corporation ,
Digital Smarties ,
Eolas Technologies and
ActiveState .
On of the many great reasons to attend the Tcl conference is the
tutorials presented by renowned leaders and experts in the Tcl
community. They will be sharing with you their knowledge of Tcl/Tk
and its extensions, and experience in developing large, versatile and
robust applications - information and techniques which will assist you
in your day-to-day Tcl programming needs.
|
Building User Interfaces with Tk I
( Ken Jones ) |
|
With remarkably little code, you can add a full-featured GUI to
your application that will have a platform-native appearance on Windows,
Unix, and Macintosh. In this course you'll explore all the Tk interface
components, learn how to modify and extend their behaviors, and see how to
put them together into complex multi-window applications.
The two sessions will complement each other, introducing basic techniques
in the first session, and more advanced techniques in the second.
|
|
Using Tcllib
( Gerald Lester ) |
|
There is a wealth of well documented and tested
tools available in the tcllib library.
Gerald will show you how to speed your application development by
finding and using these prebuilt tools.
|
|
Building User Interfaces with Tk II
( Ken Jones ) |
|
With remarkably little code, you can add a full-featured GUI to
your application that will have a platform-native appearance on Windows,
Unix, and Macintosh. In this course you'll explore all the Tk interface
components, learn how to modify and extend their behaviors, and see how to
put them together into complex multi-window applications.
The two sessions will complement each other, introducing basic techniques
in the first session, and more advanced techniques in the second.
|
|
TclHttpd
( Gerald Lester ) |
|
The TclHttpd server is one of the big secrets in the HTTP world. It's
stable, extensible, easily embedded in hardware or software, and
includes a set of facilities other http servers don't have. Gerald Lester
explains how to get the most out of a very versatile package.
|
|
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.
|
|
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'.
|
|
Advanced Tcl: Namespaces and Packages
( Clif Flynt ) |
|
This session will describe how to modularize your scripts from simple
procedures and the source command to using namespaces and packages as
well as using upvar and uplevel to control access to data.
The class will also cover techniques for separating GUI code from
business-rule code including using the bind command and variable tracing,
to bind actions to events. Examples include a Tower of Hanoi game
and a Nuclear Reactor simulator.
|
|
Starkits
( Steve Landers ) |
|
A Starkit is a single file packaging of Tcl scripts, platform specific
compiled code and application data; designed to facilitate simple
deployment of cross-platform applications. Tclkit (itself a Starkit) is
a single file Tcl/Tk interpreter used to run Starkits. It also includes
the Metakit database and the [Incr Tcl] object oriented Tcl extension
and, with versions available for over 30 platforms from PDAs to
mainframes, Tclkit is one of the easiest ways of installing Tcl/Tk. A
Starkit may be combined with a specific Tclkit version to create a
self-contained single file application, providing an
"installation-free" deployment model for even the most complicated
Tcl/Tk applications.
This session will describe how to assemble Starkits and Starpacks and,
by example, discuss applications such as the Tcl web server and Wikit
(the wiki implementation behind the Tcler's Wiki). It will show how to
use compressed versions of Tclkit on specific platforms - showing the
development of a stand-alone web application (including web server)
that fits on a single floppy disk. The session will also look at some
advanced topics such as incorporating compiled code for multiple
platforms into Starkits, and the use of the new Starsync facility to
update Starkits from a repository.
|
|
MetaKit Database Engine
( Steve Landers ) |
|
Ever wanted to use advanced database features like join or project in
Tcl? What about changing schemas on the fly - all scripted and with no
database server necessary? The good news is that you can - using the
new oomk interface to Metakit.
The Metakit database is a small, efficient embedded library that fills
the gap between flat-file, relational, object-oriented, and
tree-structured databases. It supports advanced features such as
relational joins, serialization, nested structures, and instant schema
evolution. Metakit works well for moderate-size (a hundred Mb)
datasets, and offers good performance well beyond that size when its
column-wise data model is fully taken advantage of.
Metakit is included in Tclkit and ActiveState's TclDevKit - and so is
already available in the most popular Tcl/Tk distributions.
This tutorial covers the basic metakit concepts (including column-wise
storage and dynamic schema evolution), but also introduces the
advanced features of Metakit, newly available to Tcl programmers via
the oomk extension. These features include:
- relational operators like project, select, join and groupby
- hierarchical operations involving subviews
- set operators like concat, different, intersect, minus, product, union
- hashed and indexed access for performance
- blocked access for scalability
|
|
SQLlite: Tcl API
( D. Richard Hipp ) |
|
Have you ever needed an SQL database at your disposal without
an SQL Database Server?
SQLlite is a a self-contained, embeddable, zero-configuration SQL
database engine. It supports uses a single file for the database,
and supports ACID transactions, rollback, and most of the SQL-92
syntax.
Richard Hipp describes how to use the Tcl bindings to SQLite to build
applications with complex data requirements.
|
|
SQLlite: C API and Internals
( D. Richard Hipp ) |
|
SQLite is a powerful in the hands of a novice.
Knowing what's under the hood makes it even more powerful.
Richard Hipp explains how SQLite works, and how to use its power
more effectively.
|
|
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).
|
|
Introducing Expect
( Kim Richert ) |
|
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.
|
Contact Information
tcl2006@tcl.tk
|