hook

( n.)

   A  software  or  hardware feature included in order to simplify later
   additions  or  changes  by a user. For example, a simple program that
   prints  numbers  might  always  print  them  in  base  10, but a more
   flexible  version  would  let  a variable determine what base to use;
   setting  the  variable  to  5 would make the program print numbers in
   base  5. The variable is a simple hook. An even more flexible program
   might  examine  the  variable  and treat a value of 16 or less as the
   base  to  use,  but  treat  any  other  number  as  the  address of a
   user-supplied  routine  for  printing a number. This is a {hairy} but
   powerful hook; one can then write a routine to print numbers as Roman
   numerals,  say, or as Hebrew characters, and plug it into the program
   through  the  hook. Often the difference between a good program and a
   superb  one is that the latter has useful hooks in judiciously chosen
   places.  Both may do the original job about equally well, but the one
   with  the  hooks  is  much  more  flexible  for  future  expansion of
   capabilities ({EMACS}, for example, is all hooks). The term user exit
   is synonymous but much more formal and less hackish.

[glossary]
[Reference(s) to this entry by made by: {live data}{patch space}{smart terminal}{tune}]