Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Smalltalk did not implement the message passing at the lowest level as an actual message between processes. It predates the actor model (which was inspired by it), which operates at a somewhat higher level than Smalltalk 'messages' do.

Smalltalk at the lower levels is a lot of very elegant hacks to give an outward appearance of one mechanism while being implemented in a very different manner. That is also one of the main reasons why it works as a VM, the kind of functionality required to detect the primitives at speed so that functions can be called that do the real work is hard to implement natively in a way that it is still efficient.

The top levels of Smalltalk are as elegant and simple as LISP, but under the hood Smalltalk is decidedly less elegant to make it work on the hardware available at the time.

Of course none of that stops you from implementing the Actor concepts at a higher level than Smalltalk objects and there were (are?) some efforts to do just that.



I’m no expert, but didn’t Carl Hewitt’s work on Actors (1973) predate smalltalk by seven years or so? Or was there smalltalk before smalltalk-80?


Smalltalk started in 1969 or so with first release inside Xerox Parc was in 1972 (Smalltalk-72). See early history of smalltalk : http://wiki.c2.com/?EarlyHistoryOfSmalltalk

See Carl Hewitt's retrospective on Actors which he attributes inspiration to Smalltalk, simula and lisp here: https://arxiv.org/vc/arxiv/papers/1008/1008.1459v8.pdf


Yes, exactly; also, there's an acknowledgement of the influence of "SMALL TALK" at the end of Hewitt, Bishop & Steiger's original 1973 IJCAI paper as it appeared in print (https://eighty-twenty.org/2016/10/12/hewitt-bishop-steiger-i...).

Actors, Smalltalk, Monitors and CSP all co-evolved during the 1970s, with many of the principals visiting each other and exchanging ideas. Retrospectives like Brinch Hansen's (https://dl.acm.org/citation.cfm?id=155361) spell out some of the lines of influence.


Thanks, TIL





Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: