
This presents a dilemma for the software designer. He wants maximum
flexibility for his application, so he constructs it from a collection of small
modules. Yet he is also bound by the requirement that his software be easy to
use. People have difficulty dealing with too many small modules.
Unix takes a different approach to resolving this issue. Most other systems
try to bridge the ever-widening gap between the user and the module perform
-
ing the task with a piece of software known as a captive user interface (CUI).
Unix developers, on the other hand, recognize that this gap is ever widen-
ing. Instead of linking the user and the underlying modules ...