Manufacturer: Scriptics Corporation
Price: $1000 US per named user
Reviewer: Daniel Lazenby
TclPro is a collection of tools that should make your Tcl/Tk programming life a little easier. This tool suite includes four related tools: debugger, checker, wrapper and compiler. Some tools are graphical, and others are command line. Two TclPro-specific interpreters, prowish and protclsh, are also included. These four tools provide several valuable services.
The first tool is a Tcl compiler. The current release of Tcl compiles source code before execution. With TclPro, one can compile source code independent of execution. This gives you the ability to distribute your programs in a compiled format. Not all of the Tcl source can be compiled with TclPro v1.1; items which cannot be compiled independent of execution will be compiled when executed. A procedure that takes a script as an argument is an example of something that cannot be compiled before execution.
Distributing a Tcl/Tk program to non-Tcl platforms requires the distribution of several Tcl/Tk files and libraries besides the application's Tcl script. With the TclPro Wrapper, you can bundle all of the various files into one statically or dynamically wrapped file. Wrapping a Tcl application statically creates a stand-alone bundle of tclsh and all related Tcl libraries and application files. I wrapped a simple 1820-byte file and in return received a file almost 1.67MB in size. Programs prepared in this manner can be loaded and run on platforms without regard to the installed Tcl version.
Wrapping an application dynamically will reduce the application's size. The same dynamically wrapped 1820-byte file produced an output file of about 107.5KB. There is a cost for this smaller footprint. Dynamically wrapped applications require the target platform's Tcl installation to be compatible with the Tcl release of your application. Both non-compiled and compiled Tcl files may be fed to the TclPro Wrapper.
Each new version of software presents some new functions or features. Sometimes a little backward compatibility is lost among those new features and functions. I am notorious for dropping a semicolon or curly brace in my code. TclPro Checker addresses these and several other programming issues. It can detect parsing and syntax errors. Four types of warnings are provided by TclPro Checker. There are warnings about platform portability of the code, performance-optimization opportunities for code segments, potentially incorrect command usage, and warnings about changes in syntax conventions between older and newer Tcl versions. The output of TclPro Checker streams across the screen. You may want to page the output or redirect it to a file.
Figure 1. TclPro Debugger Screen
The fourth tool is a graphical debugger with a trick up its sleeve. Figure 1 shows how information is presented in the three panels. The upper-left panel presents the stack. Variables and their values are presented in the upper-right panel. Code being debugged is displayed in the lower panel. A toolbar provides the means of stepping in, through, around and over procedures and related code.
TclPro Debugger's other useful feature is remote debugging. With this tool, you can actually debug a Tcl/Tk program residing on another platform. Don't get too excited just yet. You cannot randomly select any remote file to debug. Some prep work is required before files can be debugged remotely. Three commands with arguments must be entered into the remote file. Only after doing this can you debug them remotely.
The message here is not that I had an installation problem. It is about the timeliness and accuracy of Scriptics e-mail support staff. They knew me only as another person who was having a problem installing their fully-functioning download product for evaluation on a Caldera OpenLinux (COL) v1.3 Linux platform.
Installation materials and the Scriptics web site said TclPro was known to install and function properly on Solaris, HP and Irix UNIX flavors. SuSE 5.3+ and Red Hat 5.0+ were the only two Intel Linux distributions listed as known to support TclPro. The instructions said TclPro should work on other Linux distributions, providing they used glibc2. Having just upgraded my platform to COL v1.3 with glibc, I could not see any reason why TclPro should not run on my platform.
After verifying libc's installation and reading all of the available README and INSTALL.TXT files, I tried my first TclPro install. It failed. I repeated the install and verified my steps and the displayed error messages. I contacted Scriptics Support with the symptoms and error messages. The next business day, I received a response requesting some additional information, a basic explanation of the install process and a couple of things to try. Later in the day, I sent Scriptics Support the requested information. I received a response the next business day. The folks at Scriptics quickly spotted that COL v1.3 appended a dot (.) to the end of TclPro's CD-ROM file names. This dot was appended only to file names that did not already contain an extension. I did not have a solution, yet I knew what the problem was and knew an answer was being sought. Another business day passed and I received a workaround for my COL v1.3 installation. Using the workaround, the TclPro1.1 installation went flawlessly.
I was set up to use KDE. My screen resolution is such that the entire install dialog boxes did not appear on the screen. Resizing the dialog boxes under KDE prevented access to the dialog box buttons. I suggest using the X Window System for product installation. With X Windows, you can move portions of the dialog box off the screen to see the various buttons.
- The Tiny Internet Project, Part I
- Machine Learning with Python
- SUSECON 2016: Where Technology Reigns Supreme
- Download "Linux Management with Red Hat Satellite: Measuring Business Impact and ROI"
- Free Today: September Issue of Linux Journal (Retail value: $5.99)
- Bitcoin on Amazon! Sort of...
- Android Browser Security--What You Haven't Been Told
- Securing the Programmer
- The Many Paths to a Solution
Pick up any e-commerce web or mobile app today, and you’ll be holding a mashup of interconnected applications and services from a variety of different providers. For instance, when you connect to Amazon’s e-commerce app, cookies, tags and pixels that are monitored by solutions like Exact Target, BazaarVoice, Bing, Shopzilla, Liveramp and Google Tag Manager track every action you take. You’re presented with special offers and coupons based on your viewing and buying patterns. If you find something you want for your birthday, a third party manages your wish list, which you can share through multiple social- media outlets or email to a friend. When you select something to buy, you find yourself presented with similar items as kind suggestions. And when you finally check out, you’re offered the ability to pay with promo codes, gifts cards, PayPal or a variety of credit cards.Get the Guide