From: KD
To: Editor
Date: 3 Aug 2004
Date's remarks in A Hypothesis [On Logical Differences 1-4]
regarding the object world's failure to distinguish between values and
variables should be historically framed.
The object mania of the 90s, to the present, tends to overreach by
making applications programming a systems programming chore arising from misuse
of exposed system programming capabilities.
Prior to the first object like HOL language, SIMULA, an
operating systems or communications network software developer could gain a
rudimentary sense of Date's storage model aspect of object oriented
programming through the use of prototype data blocks; and rudimentary,
function (method) dispatch and inheritance (by selective data structure copy
and amendment), capabilities (e.g. Digital Equipment Corporation's PDP-10
TOPS10 or PDP-11 RSX-11M OSs). These
primitive but effective constructs were used to implement behavior and to
represent state not only of I/O devices, but also of abstract entities such as
computer network nodes and communications protocol virtual-circuit-end state.
But these should be regarded as only narrow capabilities
w.r.t. where object capabilities would lead. To the Artificial Intelligence
LISP community of the 1980s object capability became a powerful implementation
means to realize declarative rule based systems (e.g. the pedagogic FRAMELANG
system of MIT's Patrick Winston).
Unfortunately, due to stunted education, many applications
programmers fail to see the top of the declarative programming layered systems
implementation architecture. The result
is a muddling of object concepts and capabilities application.
C. J. Date Responds: I appreciate the comment and have
nothing to add.
Posted:
11/05/04