[squeak-dev] A Sad Day – concluded
Trygve Reenskaug
trygver at ifi.uio.no
Fri Oct 2 15:53:44 UTC 2020
Dear all,
I need to use many words to explore why I can't understand current
Squeak code. I believe the reason is a profound one, and I hope some of
you have the patience to read about it.
Thank you for your responses to my 'A Sad Day'-message. One response said
"/But please don't give up as an inventor of MVC, which has simplified
writing software for all of us.//
//We need new ideas to stabilize Smalltalk."
/As to MVC, it was received with acclamation when I first presented it
at PARC in 1978, and people suggested I should make it the theme of my
article in the special Smalltalk issue of Byte. I couldn't understand
it; MVC was so simple and obvious that is was not worth writing about
it. Nevertheless, people seem to have problems understanding MVC. It
took me a long time before I gleaned what was going on. The explanation
is a deep one, rooted in our different mental paradigms.
From around 1970, I was working on Prokon, a distributed system for
managers in the shipbuilding industry:
Every manager has their own computer that they use for augmenting
their mind. The manager understands their software and ideally
writes it themselves. Managers delegate conversations with other
managers to their computer's M-to-M network. (Marked with a heavy
black line in the figure). I chose "distributed planning with
central control" as my example project. Each manager creates a plan
for their department, using apps suited to their particular needs. A
*/distributed algorithm/* ensures consistency across departments.
I came to PARC in 1978 and could immediately relate to the Smalltalk
image with its universe of collaborating objects. Alan's definition of
object-orientation fitted my Prokon model: "Thus its semantics are a bit
like having thousands and thousands of computers all hooked together by
a very fast network."
MVC prescribes a network of communicating objects. Any object can fill
one or more positions in the network as long as it has the required
behavior; their classes are irrelevant. It's so simple that it's not
worth writing about it.
====================
The work on this post was interrupted at this point by an unexpected
week in hospital. It gave me quiet days of pondering the futility of
what I am doing and I will be terminating my memberships in the Pharo
and Squeak mailing lists. I have also deleted most of the old draft of
this message and will quickly conclude with two observations:
1.
The Smalltalk image is a universe of communicating objects. I call
it an object computer. It can be seen as the model of an entirely
new kind of computer, a model on a level closer to the human mind
than the von Neumann model of 1948. The new model is
communication-centric and should supersede the ubiquitous
CPU-centric model as soon as possible. Working out the details of
this idea could make an exciting and disruptive Ph.D. thesis.
2.
Smalltalk is called a programming language. It is a curious one,
very different from well-known languages like Java with their syntax
and semantics. Smalltalk, as a programming language, does not have
the concept of a program. Smalltalk, as a class-oriented language,
does not have syntax for the declaration of a class. Smalltalk, as
an object-oriented language, can't describe how objects collaborate
to achieve a goal. You appear to be happy with this state of
affairs, at least, I see no sign of anybody wanting to move on from
the unfinished Smalltalk language to a mature development
environment. I do not find it satisfactory and it is not acceptable
to the intended managers populating the distributed system shown in
the first picture. Consequently, I have done something about it as
described in my SoSym article "/Personal Programming and the Object
Computer./" I am tired of being alone in my endeavors and this ends
my work with Squeak and other Smalltalks. I wish you health and
happiness wherever you happen to be.
Trygve
Personal programming and the object computer
https://doi.org/10.1007/s10270-019-00768-3
--
/The essence of object orientation is that objects collaborateto achieve
a goal. /
Trygve Reenskaug mailto: trygver at ifi.uio.no <mailto:%20trygver at ifi.uio.no>
Morgedalsvn. 5A http://folk.uio.no/trygver/
N-0378 Oslo http://fullOO.info
Norway Tel: (+47) 468 58 625
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20201002/638db211/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: kjjbmoogpajdimke.png
Type: image/png
Size: 45740 bytes
Desc: not available
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20201002/638db211/attachment-0002.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cljooepacomafihh.png
Type: image/png
Size: 22069 bytes
Desc: not available
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20201002/638db211/attachment-0003.png>
More information about the Squeak-dev
mailing list
|