Hooks and Open Points
Department of Mathematics and Computer Science
Institute for Electronic Systems
Fredrik Bajers Vej 7
DK-9220 Aalborg Ø
In this paper a programming language concept called an
open point is introduced and discussed.
Open points are meant to cover a
collection of behavioral parameters of executable programs.
Such parameters add openness to a program, which
may be used to specialize the program in a variety of directions,
all of which are intended to preserve the basic flavor of the
The paper gives a survey of different mechanisms from
existing programming languages that, in some way or another,
may be used as open points. In particular,
the paper elaborates on the hook mechanism, as used in
several Lisp environments.
It is argued that open points should be supported by a set of tools.
The purpose of the tools is partly to improve the programmer awareness
of the presence of open points, and partly to catalyze an experimental
binding of the open points in an exploratory programming process.
A concrete collection of tools based on the hook mechanism in Lisp
is presented together with an example of its use.
Keywords: Lisp, hooks, open points, program reusability,
programming tools, Emacs.
Wed Mar 6 09:44:24 MET 1996