You are visitor number  since November 28, 1998.

 
Tuba News
2.4.p1 uploaded 26-Nov-98
2.4 uploaded 11-Nov-98
Quick Links
Screenshots
Versions & Downloads
Installation
Other Iliad Tools
Tea OO Environment
Sage Tcl/Tk profiler
PRCS Version Tree
Email Me
 

What is Tuba

Tuba is a debugger for Tcl/Tk programs. The goal of Tuba is to provide a debugging environment similar to traditional source level debuggers for other languages. 

Here are some of the currently supported features of Tuba: 

  • Able to debug any Tcl/Tk 8.0 based interpreter 
  • Source code viewing; you see the source as you step through it 
  • Common debugging operations such as continue, step, step over 
  • Set breakpoints on specific lines or specific proc entries 
  • View variables, with the option to set a watchpoint, a breakpoint that is triggered when the variable is modified 
  • Can intercept errors as they occur and look at the stack or variables in the context of the error. 

Requirements For Running Tuba

Tuba requires Tcl/Tk 8.0 or any interpreter built using 8.0 libraries. This is for the namespace functionality. Everything is written in pure Tcl/Tk, although a couple of included shared libraries can be used for increased speed. All you really need is some Tcl/Tk source code to debug! 

Tuba has been tested and run on Unix-based systems (Linux and SunOS), Windows 95, and Windows NT; however, it should run with little to no modifications on all Tcl-supported platforms. 


Screenshots of Tuba

Here are some screenshots of Tuba running: 

Version Descriptions and Downloading

  • Tuba 2.4.p1 Uploaded 11/26/98. This patch fixes a few bugs that were introduced with the 2.4 changes, plus a couple that have just been discovered. To see the bugs fixed, look at CHANGES.
  • Tuba 2.4 Uploaded 11/11/98. This release has many bug fixes that have been nagging me for awhile. I also managed to get in a few new features:
    • proc exclusions - a facility to exclude certain procs from being instrumented and thus not debugged.
    • sessions - you can now save your debug sessions in a file for later retrieval. This includes breakpoints, options, etc.
    • Many more changes listed in the CHANGES file.
    • Download one of these:
    • The parsers have a small bug fix in them (these are optional):
    • The User's Guide has been updated. I've added a section called What's New in 2.4. This will give the lowdown on the new features and big fixes. Read it here. It is also included in one of the above archive files.
  • Tuba 2.3 Uploaded 08/21/98. This version includes lots of changes with respect to parsing and instrumenting. Most notably, this version supports caching of instrumented sources, features a new run-time instrumenting option which works well with "difficult" Tcl code, and includes an updated user's guide. See the CHANGES file for a complete list of changes.
    • Download one of these:
    • The parsers. These have changed yet again and also include an experimental parser that is faster and easier to maintain:
    • The user's guide has finally been updated to reflect 2.3. I'm not providing the postscript version anymore. Instead, you can create it yourself with the html2ps perl script found here, and using the style configuration file in the doc directory. Careful, though. This utility is a memory hog.
  • Old versions available upon request

Installing Tuba

  1. First get the distribution tar or zip file. 
  2. Unpack or unzip it in a directory where you will run Tuba. 
  3. That's the minimum you have to do. Just run the tuba program. See the README file in the tuba directory for more installation details. 
For Windows users, you can create an association for the sessions files to bring up the session in tuba. Here are the basic instructions: 
  1. Bring up the Folder Options window
  2. Select the File Types tab
  3. Click the New Type... button
  4. Set the Description to "Tuba Session File"
  5. set the Associated Extension to "ses"
  6. Click the New... button for a new action
  7. Set Action to open
  8. Set the Application to the following, substituting <wishdir> for the directory you installed wish80 in and <tubadir> for the directory you installed tuba in:
  9. "C:<wishdir>\wish80.exe" "C:<tubadir>\tuba.tk" -- -s "%1"

You can also add a new action to .tcl extensions for debug so that you can easily load up a Tcl/Tk source file in the debugger: 
  1. Bring up the Folder Options window
  2. Select the File Types tab
  3. Find the registered file type TclScript
  4. Select it and hit the Edit... button
  5. Click the New... button for a new action
  6. Set Action to debug

  7. Set the Application to the following, substituting <wishdir> for the directory you installed wish80 in and <tubadir> for the directory you installed tuba in: 

    "C:<wishdir>\wish80.exe" "C:<tubadir>\tuba.tk" "%1" 
     

If anyone knows how to use the registry package and set these associations up via a script, I would appreciate some help. Thank you. 


Legal Mumbo Jumbo

Tuba is released under the starving Artist Artistic License. Details found in the LICENSE file. Basically, you can do anything you want with Tuba except make money off it. To do that you have to make arrangements with me.