Stooop is implemented in a single sourceable file and uses simple techniques to provide object orientation to the great Tcl language. The class, new, delete, virtual and classof commands are implemented as Tcl procedures. Stooop was implemented with a constant concern for performance. Member data is stored in Tcl associative arrays, which are best for random data access. Classes are implemented as namespaces to improve encapsulation and reduce naming interferences.
Object oriented helper code is kept as small and as efficient as possible.
Typically, only a couple of Tcl lines are added to a member procedure definition. Program startup time will be slightly increased due to some class and member procedures preprocessing, but runtime overhead is kept to a strict minimum. Use of object oriented techniques may actually improve the performance of your code. A full HTML documentation, simple demonstration script, graphical demonstration with composite pattern and test files are provided. You may also run the test suite and look at the test scripts for examples.