ClassyTcl
Object system, widget set and GUI builder for Tcl by Peter De Rijk (Universiteit Antwerpen)
What is ClassyTcl
ClassyTcl is a dynamically loadable object system for Tcl. A Tcl-only as well as a C implementation is available. It also doesn't require patches to the Tcl core, so keeping up with new releases should be easy. Performance is very adequate. The C version is gives extra speed, and makes it possible to implement some methods in C.
In contrast to other Tcl object systems for Tcl, it is not modeled after the object system designed for a completely different language such a C. IMHO, it better follows the Tcl philosophy. The system is simple, but flexible. Classes and objects are dynamic, and can easily be queried, changed and debugged at runtime.
Installation
You should be able to obtain the latest version of ClassyTcl via www on url http://rrna.uia.ac.be/classytcl/ or via anonymous ftp on rrna.uia.ac.be. in the directory /pub/tcl
Binary packages
A binary ClassyTcl package can be "installed" by placing it where Tcl can find it. A binary package does not necesarily contain compiled code: If no compiled version (.so, .dll) is available, a Tcl-only version will be used.
Sources
The Tcl script makedist.tcl creates a package distribution. If no compiled version (.so, .dll) is available, a Tcl-only version will be created.
Compiled packages for most Unix platform should be created using the following
steps:
cd ClassyTcl/build
./configure
make
make install
Use
The ClassyTcl object systen can be used by putting the directories (after
unpacking) somewhere appropriate and using the command
package require Class
This will add one command (and a namespace) named Class, that forms the
basis of ClassyTcl.
Porting to other platforms
The Tcl version should work anywhere Tcl works. The Tcl version will
be used when no shared object file or dll is found. You can create
binaries for other Unix platforms using the following steps:
cd ClassyTcl/build
./configure
make
Contributions
If you have fixed bugs, made some nice additions to ClassyTcl widgets, etc., you can send them to me, and I will consider incorporating them in new releases.
How to contact me
My mailbox gets overwhelmed quite often, and the development of ClassyTcl is definately not my only task, so responses might be slower than you would like. However, I will respond as fast as I can.
Peter De Rijk
University of Antwerp (UIA)
Department of Biochemistry
Universiteitsplein 1
B-2610 Antwerp
tel.: 32-03-820.23.16
fax: 32-03-820.22.48
E-mail: derijkp@uia.ua.ac.be
web: http://rrna.uia.ac.be/~peter/personal/peter.html
Legalities
ClassyTcl is Copyright Peter De Rijk, University of Antwerp (UIA), 2000. The following terms apply to all files associated with the software unless explicitly disclaimed in individual files.
The author hereby grant permission to use, copy, modify, distribute, and license this software and its documentation for any purpose, provided that existing copyright notices are retained in all copies and that this notice is included verbatim in any distributions. No written agreement, license, or royalty fee is required for any of the authorized uses. Modifications to this software may be copyrighted by their authors and need not follow the licensing terms described here, provided that the new terms are clearly indicated on the first page of each file where they apply.
IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY DERIVATIVES THEREOF, EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
