Rivet documentation index


What is Rivet

Rivet is a version of Tk, the graphical user interface programming interface commonly associated with Tcl. Rivet is different from Tcl/Tk because it uses a minimal subset of Tcl code, so it is suitable for embedding in other programming languages without the overhead of Tcl.

Rivet contains programming interfaces for two languages: C and Python. The C interface provides the basis for embedding in other programming languages, while the Python interface is suitable for developing applications. Some people are interested in programming entire applications at the C level. Although this is possible, it does not come without difficulties (such as lack of documentation).

For the Python programmer, Rivet provides an efficient and clean interface to Tk. The performance is on par or better than Tcl/Tk. Rivet scales to larger applications than Tcl/Tk because of Python's structured programming environment. Rivet's programming interface has been carefully organized to be easily translated from Tcl/Tk equivalents so that existing Tcl/Tk documentation and experience can be reused.

Python also has another interface to Tcl/Tk, the Tkinter module. Rivet covers the same territory as Tkinter and you may choose to use either. Each has its advantages and disadvantages.

There is also a Tcl-less version of Tk for Perl. Rivet is not related to TkPerl (also known as ptk or Tk) except in concept.


About this release

This is the second release of Rivet. Most of the changes from the previous release are bug fixes and documentation improvements. An experimental outline list widget has been added, and the table widget has some additional features. Rivet is known to have successfully compiled on several platforms including: Solaris 5.3/5.4, SGI 5.3, HPUX9.05, Linux. Early problems with gcc have been fixed.

This release is based on tk4.0, (patch level 1) and tcl 7.4 (patch level 1). The Python interface is dependent on Python 1.3 (or later).


Where to get Rivet sources

You can download Rivet from this link. www.python.org has information on mirror sites.


Author: Brian Warkentine
Email: brianw@veritas.com