Tcl HomeTcl Home Hosted by
ActiveState

Google SiteSearch

Tcl'2006 Abstract: libtclsh.a: A single file solution for embedding the Tcl Interpreter

13th Annual Tcl/Tk Conference

Main Registration Schedule Tutorials Info

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 .

libtclsh.a: A single file solution for embedding the Tcl Interpreter

Author: Clif Flynt

Abstract

Several wrapping solutions have been presented to the community over the years. These include Jan Nijtman's original wrap program, TOBE, StarKits, ProWrap, and FreeWrap.

These solutions are ideal for a script developer who needs to distribute an executable version of his application with the Tcl interpreter wrapped around it.

They are not suited to providing a C/FORTRAN/ADA/Whatever developer with a single library to link with to gain access to the Tcl interpreter.

The libtclsh.a solution is to pack the contents of the tcl libraries into a memory structure, use a virtual file system to mount the memory image as a /mem directory into the Tcl interpreter and then redirect all the initialization to the /mem filesystem.

This initialization is similar to the approach used in Starkits, TOBE, etc, but reduces the level of external code required.

Using a C structure to hold Tcl files was used by the Borenstein/Rose SafeTcl interpreter. The pure ASCII representation of all the data in the Tcl initialization libraries is large (about 4 Meg), and leaves all the Tcl scripts (possibly including proprietry algorithms in the application) open to easy examination.

The libtclsh.a library maintains the memory image in a compressed format, reducing the memory footprint and restricting access to the Tcl scripts contents.

The paper will discuss the implementation and applications of this idea. Applications include providing FORTRAN developers a single library to link to for Network support and rapid-prototyping GUIs in Tcl for use by C++ developers.

Conference Committee

Cyndy Lilagan   Eolas TechnologiesFacilities Coordination
Clif Flynt   Noumena CorpGeneral Chair
Steve Redler IV   SR TechnologyProgram Chair
Steve Landers   Digital SmartiesProgram Co-chair
Kevin Kenny   GE Global Research Center
Jeffrey Hobbs   ActiveState Corp
Andreas Kupries   ActiveState Corp
Ron Fox   NSCL Michigan State University
Donal Fellows   University of Manchester
Larry Virden   Tcl FAQ Maintainer
Mike Doyle   Eolas Technologies
Gerald Lester   HMS Software

Contact Information

tcl2006@tcl.tk