arXiv · 2604.10399
Vanilla Object Orientation (VOO): A Value-Semantics Approach to Classes in Tcl
Abstract
I present Vanilla Object Orientation (VOO), a framework that composes classes from Tcl's native data structures -- lists and dictionaries -- rather than introducing additional framework infrastructure. VOO objects are plain Tcl lists with automatic memory management through copy-on-write semantics, eliminating the destructor burden inherent in TclOO and Itcl. Benchmarks on Tcl 8.6.13 and Tcl 9.0 show VOO achieves 7--18x faster object creation and 4--6x superior memory efficiency compared to TclOO. A companion C++ migration path (VOO C++) further improves field-access speed (setter 2.3--2.6x faster) and memory (6.8--9.8x lighter than TclOO), while preserving an identical Tcl call-site API. Cross-version analysis confirms that VOO's compositional design scales better than framework-based approaches as the interpreter evolves.
Explore related subjects
Keep this discovery
Alan Araujo. 2026-04-12. Vanilla Object Orientation (VOO): A Value-Semantics Approach to Classes in Tcl. https://arxiv.org/abs/2604.10399
Cite the original work for its findings. Save a collection to share your selection of sources.