The support of an open point-like mechanism in a programming language is supposed to have a positive impact on the generality and the potential reusability of the programs written in the language. As we have seen, it is possible to simulate open points in many dynamic programming languages. In more statically-oriented programming languages it is, however, far more difficult to obtain the effect of open points, mainly because of the requirement of late bindings of open points.
A coherent and systematically defined hook mechanism is important for every Lisp dialect. However, when compared with open point mechanisms in object-oriented languages (such as Smalltalk, Loops, and CLOS), the object-oriented approaches should be preferred. The reason is that the open points provided by object-oriented languages are better integrated and follow the main structuring mechanism of these languages.
Finally, we will emphasize the importance of the tool support of hooks. Hook reports improve the practical value of hooks in a program. It is easy to get up-to-date and consistent information about the presence of hooks, together with their documentation. Furthermore, it is extremely flexible to explore potential attachments of the hook via the interactive command interfaces that are defined on the hook reports.
Acknowledgements. I would like to thank Bent Bruun Kristensen, Liam Peyton, Randy Trigg, Michael L. Van De Vanter, and Kasper Østerbye for help and discussions during the process of writing this paper.