Fifteenth Annual Tcl/Tk Conference (2008)

Basic Information

Location: Near Washington DC (closest airport: Dulles)

WhenOctober 22-24, 2008
WhereComfort Suites Manassas 7350 Williamson Blvd,
Manassas, Virginia, United States 20109
Email Contact[email protected]
Site ChairClif Flynt
Program ChairAndreas Kupries
ByTcl Association @ http://www.tclcommunityassociation.org/wub/index.html
ProceedingsPrinted at the Tcl Association Press @ Lulu
Online at the Tcl Community Association

Program

Proceedings 2008

Tcl/Tk Conference: 2008

The 2008 Tcl Conference was held in Manassas, VA.

Our invited guest was Miguel Sofer, who explained the improvements to the Non Recursive Engine byte-code interpreter. The NRE byte code interpreter allows Tcl to support more programming styles including tail-call recursion and co-routines.

Our Keynote speaker was Dan Foos of Testing and Evaluation Solutions. TNES does simulation and modeling studies for the US Navy. They use Tcl and Sqlite to manage simulations on a cluster of 300 blades and then analyze the results with another set of Tcl/Tk applications. The speed with which applications can be created in Tcl/Tk allows TNES to develop solutions quickly with a very small staff of programmers.

The Tcl Community Association was pleased to award Larry Virden with the first Tcl Community Association Service Award. Larry has maintained the Tcl FAQ, scrutinized the wiki for typos and abuse, and quietly and selflessly helped keep the community running for nearly 20 years.

Thanks, Larry

A copy of the proceedings can be purchased as hardcopy at the Tcl Community Association Press storefront on Lulu.

Proceedings


Daniel A. Steffen : Tcl/Tk Community GSoC European report

An overview of the European Tcl/Tk GSoC report

Gustaf Neumann, Franz Wirl : A Business Rule Management System based on the high-level object oriented scripting language XOTcl
High level object oriented scripting languages like XOTcl can be perfectly used to implement Charles Forgy's Rete algorithm. An algorithm that has been developed and tested to match between more than a thousand patterns and objects. Implementing this fast algorithm into/with XOTcl will provide a fast and dynamic Rete library in XOTcl.

Tomasz Kosiak : Google Summer of Code Overview
Powerpoint presentation: Overview of the Google Summer of Code

Jeff Hobbs : The (Active) State of Tcl
History and current state of Tcl/Tk development

R. Fox : A Domain Specific Language for defining Nuclear Physics Experiments.
Tcl's support for the implementation of domain specific languages (DSLs) has been used to define a language for describing the readout and initial unpacking of data from nuclear physics experiments. The DSL described has been tailored to the Weiner VM-USB USB/VME interface module, and the NSCLSpecTcl data analysis software. I will describe the extensions to TCL and a case study where this system was deployed at Säteilyturvakeskus (STUK) [1], the Radiation and Nuclear Safety Authority of Finland.

Olly Stephens : mod_tcl: TCL inside the Apache web server
mod_tcl is an apache httpd module that allows TCL code to be executed inside the web server during any of its phases whilst handling requests. This tight integration makes possible many things over and above simple page generation.

Mike Doyle, Cyndy Lilagan, Steve Landers, and Steve Huntley : dotNyet
In recent years, the notion of "cloud computing" has become all the rage. Despite its recent wave of popularity, distributed computing has been with us in various forms for more than 20 years. Distributed computational systems are all about allowing one machine on a network to tap into the computational resources of one or more other systems connected to the same network. Currently popular frameworks for this range from commercial systems such as Microsoft's .NET to large open source projects such as the Globus Grid. One characteristic common to these systems is the relatively high level of complexity inherent in their architectures, deployment requirements, and development resources. The dotNyet system is a Tcl-based response to the complexity of these other systems. dotNyet exploits a handful of uniquely-Tcl-empowered technologies to provide a simple yet powerful platform for the easy development and safe deployment of secure platform-agnostic distributed Tcl applications over untrusted network environments.

Steve Landers and Mike Doyle : Skybot
The Skype API provides facilities for external applications to be able to communicate with and control various aspects of the Skype VOIP and IM application. Originally developed in early 2005, Skybot uses the power and flexibility of Tcl to dramatically expand the usefulness of the Skype system. Using Skybot, one can create a variety of programmable responses to incoming Skype calls and chat messages. The system incorporates a Tcl-based state machine which can be configured to automatically trigger Tcl code in response to various Skype events. This provides the user with a surprisingly-broad and powerful set of capabilities for automating Skype-based communication operations.

Andrew Mangogna : Relation Oriented Programming with Raloo
Raloo is an objected-oriented extension to Tcl that combines the relational data structuring capa- bility of TclRAL with an object-oriented programming style as provided by TclOO. This paper intro- duces Raloo and describes how the capabilities of Raloo may be used to capture the semantics of a software problem in a more declarative manner. Raloo suppor ts problem decomposition into domains, with domains containing classes, relationships and domain functions. Both synchronous processing and asynchronous processing via state machines are provided. The relationship of Raloo to formal software methods is also discussed. (Presentation Slides)

Joe Mistachkin : Eagle: Tcl Implementation in C#
Eagle, Extensible Adaptable Generalized Logic Engine, is an implementation of the Tcl scripting language for the Microsoft Common Language Runtime (CLR). It is designed to be a universal scripting solution for any CLR based language, and is written completely in C#. Superficially, it is similar to Jacl, but it was written from scratch based on the design and implementation of Tcl 8.4. It provides most of the functionality of the Tcl 8.4 interpreter while borrowing selected features from Tcl 8.5 and the upcoming Tcl 8.6 in addition to adding entirely new features.

Miguel Sofer : NRE: the non-recursive engine in Tcl8.6
Tcl8.6 has a completely redesigned execution model that allows among others arbitrary deep recursion in constant C-stack space. The design is derived from the ideas already present in mod-8-3-branch, implemented at a different level and much generalized. It is com- pletely transparent to extensions, users of the standard Tcl APIs keep perfect compatibility. (Slides for NRE in 8.6) (Slides for Tailcalls in 8.6) (Slides Coroutines in 8.6)

Kevin B. Kenny : Tcl Database Connectivity
Tcl Database Connectivity is a newly-approved interface in the Tcl Core as of release 8.6. It fills the need - expressed over many years - of a uniform interface to Tcl for SQL databases. TDBC is built to exploit the latest features of 8.6, including its ob- ject-oriented functionality. It is designed for close integration with Tcl; in particular, it addresses such issues as immunity to SQL injection attacks, type mismatches be- tween Tcl and SQL, and the presence of NULL columns without requiring either spe- cial Tcl code to handle them. (It approaches everything with the attitude that it should be more difficult to write insecure code than secure code, and that SQL should have no impact on "everything is a string.") It is the intent that TDBC should be one of Tcl's foundational components, so that database applications in Tcl can have the same ubiquity as Tcl itself.

Timothy L. Tomkinson : Remote Control of Test Equipment Using Distributed Objects
Many testing environments consist of a heterogeneous mixture of CPUs connected via a network. These CPUs, in-turn, are used to control various pieces of test equipment over a wide variety of interfaces. By combining the power of Tcl, the object-oriented capabilities of Itcl, the remote communication facility of comm and the ability of Ffidl to access C libraries, an extremely simple remote method call mechanism was developed that both hides the complexity of network programming and eliminates the need to write control software in any language other than pure Tcl.

John J. Seal : Agent SMITH: Evolution of a Test Tool in Tcl/Tk
This paper describes the evolution of the Story Maker Interface Test Harness (SMITH), a test tool developed by Raytheon Technical Services Company (RTSC) for internal use on one of its projects. Development started with a sketch made by a project engineer, and proceeded in four incremental stages: First, implement the sketch as proof of concept; second, automate the tool using test case files; third, develop a C extension to provide hooks into the target system; and fourth, analyze the target system's response. These stages tracked the changing needs of the project, from development of the interface code before real hardware was available, through unit test, and finally into full-scale system integration and qualification testing. (Presentation Slides)

Mike Doyle, Maury Pescitelli, Cyndy Lilagan, Steve Landers, Steve Huntley, Elise Pescitelli : AnatLab: A Web-based Virtual Anatomy Laboratory
This work represents the convergent evolution of a number of technologies and research "threads." A project called MetaMAP, which developed early hypermedia imagemap technology, dates back to 1986. Work on creating a new paradigm for doing client-server visualization over the Internet began in 1992. Another major project began in 1993 to turn the Web into a platform for interactive applications. A project to develop multidimensional imagemap technology began in 1995. Finally, work on a scalable computational server architecture called "Dark Iron" began in 1997. The AnatLab project represents the intersection of these various research efforts to create a new kind of navigable knowledgespace that leverages the advantages of each of its constituent technologies.


Fifteenth Annual Tcl/Tk Conference (2008) Discussion

Another page for this topic is at Tcl2008.