The biological cell (was: Erlang)
Alan Kay
Alan.Kay at squeakland.org
Sat Nov 15 00:09:44 UTC 2003
Hi Hans --
When I was thinking about this in the 60s (and motivated by contacts
with biology,math, computers, TSS, Sketchpad, Simula, LISP, the start
of the ARPAnet, and a remark by R.S. Barton, the designer of the
B5000: "The basic principle of recursive design is to make the parts
have the same power as the whole"), it occured to me that "the whole"
was an entire computer, and it would be very interesting to make "the
parts" also be entire computers (as opposed to things that weren't
whole computers, such as data structures and procedures).
Most of the parts would be software computers, some would be HW
computers. Intercommunication would be done by messages, etc. This
mirrored the upcoming ARPAnet in the large, and seemed to improve
what Simula and Sketchpad were reaching for in the small. This also
resembled cellular biology, and in mathematics: abstract algebras.
The B5000 pointed part of the way towards the meeting of HW and SW
machines. LISP was the start of a good metamachine.
A big trick, which required quite a few smart people to help work
out, was how to make everything one of these machines, and how to get
reasonable efficiency of operation.
The first Smalltalks were in the middle of the progression of
designs. The objects in Smalltalk-72, for example, implemented a kind
of top down recognizer that parsed the messages and responded. There
were no separate methods, and each object was essentially a looping
process (like a machine on the internet) waiting for a message to
parse.
This is very similar to where several Prolog derivatives got to later
on (including Erlang). Hewitt's Actors used this idea in many
interesting and important ways.
An interesting consequence of this structure was that protection was
complete in ST-72, and all messages could be serialized if the object
wanted (we did not bother with this because we were working on
different kinds of problems -- but Hewitt thought about it a lot).
Another interesting consequence of this was that each object/class
could implement its own grammar, and there was no extra cognitive
overhead in extending the syntax.
Cheers,
Alan
-------
At 9:12 PM +0100 11/14/03, Hans Nikolaus Beck wrote:
>-----BEGIN PGP SIGNED MESSAGE-----
>Hash: SHA1
>
>Hi,
>
>from the perspective of modeling in computer science, is there a
>difference between the statements
>
>1) a biological cell IS a process
>
>2) a biological cell HAS processes
>
>(related to the discussion if objects could been seen as processes) ?
>
>From the last posts, I can understand that a process may be modeled
>as a object (which is the other direction). In this case, what
>represent the methods/behaviour of such objects (or in other words:
>what is the behaviour of a behavior/process)
>
>Greetings
>
>Hans
>-----BEGIN PGP SIGNATURE-----
>Version: GnuPG v1.2.3 (Darwin)
>
>iD8DBQE/tTcdX8NXna8434cRAuQ3AKCfGmKg7UwzAzjp2suUuW06nAhAoACbBTip
>d/LhNgoVesDOtM3SqExxL+M=
>=xnw7
>-----END PGP SIGNATURE-----
--
More information about the Squeak-dev
mailing list
|