Tutorials

October 16 - 20, 2017

Crowne Plaza Houston River Oaks
Houston, Texas, USA
2712 Southwest Freeway, 77098
Phone: 1-713-5238448
Fax: 1-713-5771273


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.

Free Tutorials

This year we are offering FREE tutorials Monday and Tuesday evenings. These will be 1-2 hour lectures on special topics. Anyone is welcome to attend the evening lectures, whether they are a member of the conference or not.

Tutorial schedule

Morning Afternoon Evening
Monday Introduction to Tcl 1 Introduction to Tcl 2
Replacing Make with Tcl (Re)Introducing Odielib
Tuesday Using Coroutines Using Critcl
Advanced Tcl: Namespaces and Packages Advanced Tcl: TclOO Intro

Tutorial Information

Using Critcl — Andreas Kupries

Critcl makes it easy to merge C code into your Tcl application. This can be used to speed up compute intensive parts of an application, link Tcl with an external library, or just for fun.

The tutorial will explain the theory and details of using Critcl.

This is an upgraded successor to Steve Landers tutorial about the same topic, adding in all the new things Critcl got over the last few years.

Advanced Tcl: Namespaces and Packages — Clif Flynt

Required: Basic knowledge of Tcl

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.

Advanced Tcl: TclOO Intro — Clif Flynt

Required: Basic knowledge of Tcl

Tcl 8.6 makes TclOO the standard Object Oriented language for Tcl.

Clif will describe the basics of OO:

  • How to construct classes and objects
  • How/When to use inheritance, mixins
  • Object methods and object variables.
  • Class methods and class variables.
  • Class morphing

Introduction to Tcl 1 — Clif Flynt

Required: Knowledge of basic programming concepts. No previous experience with Tcl required.

This course gives you all the knowledge you need to produce useful Tcl scripts, as well serving as a framework for exploring more advanced features of Tcl. We'll explore basic Tcl syntax and commands, string processing, data structure manipulation, basic process interaction, and file handling.

Introduction to Tcl 2 — Clif Flynt

Required: Knowledge of basic programming concepts and very basic Tcl.

This course gives you all the knowledge you need to produce useful Tcl scripts, as well serving as a framework for exploring more advanced features of Tcl. We'll explore basic Tcl syntax and commands, string processing, data structure manipulation, basic process interaction, and file handling.

Using Coroutines — Nathan Coulter

(Re)Introducing Odielib — Sean Woods

Odielib aggregates many C accelerated routines for 3d math, geometry, cryptology, as well as common standalone C utilities into a single library. This course will give an overview of this library, show how to extend odielib, as well as navigate its Tcl based build system. It will further show how to implement custom Tcl Object types, build TclOO based C extensions, and utilize the Practcl build system.

Replacing Make with Tcl — Sean Woods

This course will cover using the tools in the Practcl library to replace make and nmake for complex projects which need to build on multiple platforms. The course will cover strategies to work around the quirks of popular extensions. Participants with laptops will assemble their own kit in class, based on the odie project, which includes Tk, TkImg, TWAPI, tdom, odielib, canvas3d and sqlite.

Contact information

[email protected]