Assertions for the Tcl language
Jonathan Emdin Cook · 1997
Assertions, even as simple as the C assert macro, offer important self-checking properties to programs, and improve the robustness of software when they are used. This paper describes AsserTcl, an assertion package for the Tcl programming language. Our assertions take the form of commands in the program text, and cover point assertions about the computation state, assertions about procedure input values and the return value, and assertions about the values that variables may take on over their whole lifetime. In addition, universal and existential quantifiers are provided for both lists and arrays, not only for individual elements, but for sequences of elements as well. 1 Introduction Assertions---declarative annotations to a program that describe some property about the program and its state---are useful tools in producing robust software. Most programming languages are not designed to include assertions, with the notable exception being Eiffel [3], but efforts have produced annotati...