Live data from Hacker News

Alan Kay is still waiting for his dream to come true

fastcompany.com

221–230 of 297 posts

Re: Alan Kay is still waiting for his dream to come true

#221

Earlier quoted context omitted.

> It's worth noting that you then have made a "software Internet", and this can be mapped in many ways over a physical Internet. The more interesting/optimized ways to map this would be where a single object in the software internet somehow maps to multiple computers, either doing parallel computation or partitioned computation on each. I feel the semantics of mapping the object onto a physical computer would have to…

"The more interesting/optimized ways to map this would be where a single object in the software internet somehow maps to multiple computers, either doing parallel computation or partitioned computation on each. I feel the semantics of mapping the object onto a physical computer would have to be encoded in the object itself." You might be interested in Alan Kay's '97 OOPSLA presentation. He talked in a similar vein to…

Actually ... only the first version of Smalltalk was done in terms of the NOVA (and not using BCPL). The subsequent versions (Smalltalk-76 on) were done by making a custom virtual machine in the Alto's microcode that could run Smalltalk's byte codes efficiently.

The basic idea is that you can win if the microcode cycles are enough faster than the main memory cycles so that the emulations are always waiting on main memory. This was generally the case on the Alto and Dorado. Intel could have made the "Harvard" 1st level caches large enough to accommodate an emulator -- that would have made a big difference. (This was a moot point in the 80s)

Re: Alan Kay is still waiting for his dream to come true

#222

Earlier quoted context omitted.

I think your analogy is going in a better direction. I had the same idea after taking a look at Squeak for a while. What would need to be added to your analogy is a notion of design. You see, in Smalltalk, for example, your programming takes place in the messages. So, even the daemons (which, for the sake of argument, we could think of as analogies to objects), which would be the senders and receivers of messages wou…

I've seen some of Bret Victor's talks but your description made it click! > the source code is not technically stored with the class object This is more of an optimization choice, perhaps? Given the link is maintained, it might be OK to say the source code and the bytecode form are two forms representing the same object?

Nothing is technically stored with the class object (everything is made from objects related by object-references). Semantically everything is "together". Pragmatically, things are where they need to be for particular implementations. In the early versions of Smalltalk on small machines it was convenient to cache the code in a separate file (but also every object -- e.g. in Smalltalk-76) was automatically swappable to the disk -- just another part of the pragmatics of making a very comprehensive system run on a tiny piece of hardware.

Re: Alan Kay is still waiting for his dream to come true

#223

Earlier quoted context omitted.

Closer to home -- for example in the US public educational system -- we have prime examples of your (and Easterly's) point about "band-aids" vs. "health". After acknowledging how politics works, I think we can see other factors at work in those more genuinely interested in dealing with problems. Some of these are almost certainly (a) the idea that "doing something" is better than doing nothing (b) that "large things…

Hmm. So, it sounds like the same "keyhole" problem I've seen you talk about before (you used an AIDS epidemic as an example with this). What's seen is taken as "good enough," because the small perspective seems large enough. If there are any frustrations or tragedies, they're taken as, "It goes with the territory. Just keep plugging away." There's a parable I used to hear that I think plays right into this: Two peopl…

We are "story creatures" and it takes a lot of training and willpower to depart from "fond stories and beliefs" to "actually think things through".

That the moon shot was just a political gesture -- and also relevant to ICBMs etc -- was known to every scientist and most engineers who were willing to think about the problem for more than a few seconds.

We hoped that the -romance- of the shot would lead to the very different kinds of technologies needed for real space travel (basically it's about MV = mv, and if you don't want to have to carry (and move) a lot of M, you have to have very high V (beyond what chemical reactions can produce). If you have to have a large M you use most of it to move just it! This has been known for more than 100 years.

But the real romance and its implications didn't happen in the general public and politicians.

Re: Alan Kay is still waiting for his dream to come true

#224

Earlier quoted context omitted.

> It's worth noting that you then have made a "software Internet", and this can be mapped in many ways over a physical Internet. The more interesting/optimized ways to map this would be where a single object in the software internet somehow maps to multiple computers, either doing parallel computation or partitioned computation on each. I feel the semantics of mapping the object onto a physical computer would have to…

"The more interesting/optimized ways to map this would be where a single object in the software internet somehow maps to multiple computers, either doing parallel computation or partitioned computation on each. I feel the semantics of mapping the object onto a physical computer would have to be encoded in the object itself." You might be interested in Alan Kay's '97 OOPSLA presentation. He talked in a similar vein to…

Thanks for the long write up. I found it very interesting.

> You might be interested in Alan Kay's '97 OOPSLA presentation

Oh yeah I have actually seen that - probably time to watch it again.

> Well, this is because most programmers don't think about what they're really dealing with

Agree with that. Most people are working on the 'problem at hand' using the current frame of context and ideas and focus on cleverness, optimization or throughput within this framework. When changing the frame of context may in fact be much better.

> What Kay is talking about is that the Alto didn't implement a hard-coded processor. It was soft-microcoded.

Interesting. I wonder if FPGAs could be used for something similar - i.e. program the FPGAs to run your bytecode directly. But I'm speculating because I don't know too much about FPGAs.

Re: Alan Kay is still waiting for his dream to come true

#225

Earlier quoted context omitted.

I think your analogy is going in a better direction. I had the same idea after taking a look at Squeak for a while. What would need to be added to your analogy is a notion of design. You see, in Smalltalk, for example, your programming takes place in the messages. So, even the daemons (which, for the sake of argument, we could think of as analogies to objects), which would be the senders and receivers of messages wou…

"More or less" ... I can see that it's hard after decades of "data-centric" perspectives to think in terms of "computers" rather than "data", and about semantics rather than pragmatics. It's not "data contains procedures" but that objects are (a) semantically computers, and are impervious to attack from the outside (a computer has to let an attack happen via its own internal programming), and (b) what's inside can be…

> We had planned that the interior of objects should be an "address space of objects" because this is a better and more recursive way to do modularization

Something that nags me in the back of my mind is that messages are not just any object, they always have the selector attached. Why not let objects handle any other object as a message? Is this what you mean by the above?

Thinking about the biological analogy (maybe taking it too far...): the system of cells is distinct from the system of proteins inside the cells and going up the layers we have the systems of creatures. So the way proteins interact is different from how cells interact, etc. but each system derives its distinct behaviors from the lower ones. Also, the messages are typically not the entities themselves but other lower level stuff (cells communicate using signals that are not cells). So in a large scale OO system we might see layers of objects emerge. Or maybe we need a new model here, not sure.

Re: Alan Kay is still waiting for his dream to come true

#226

Earlier quoted context omitted.

"The more interesting/optimized ways to map this would be where a single object in the software internet somehow maps to multiple computers, either doing parallel computation or partitioned computation on each. I feel the semantics of mapping the object onto a physical computer would have to be encoded in the object itself." You might be interested in Alan Kay's '97 OOPSLA presentation. He talked in a similar vein to…

Thanks for the long write up. I found it very interesting. > You might be interested in Alan Kay's '97 OOPSLA presentation Oh yeah I have actually seen that - probably time to watch it again. > Well, this is because most programmers don't think about what they're really dealing with Agree with that. Most people are working on the 'problem at hand' using the current frame of context and ideas and focus on cleverness,…

Yes re: FPGAs -- they are definitely the modern placeholder of microcode (and better because you can organize how the computation and state are hooked together). The old culprit -- Intel -- is now offering hybrid chips with both an ARM and a good size patch of FPGA -- combine this with a decent memory architecture (in many ways the hidden barrier these days) and this is a pretty good basis for comprehensive new designs.

Re: Alan Kay is still waiting for his dream to come true

#227

Earlier quoted context omitted.

"More or less" ... I can see that it's hard after decades of "data-centric" perspectives to think in terms of "computers" rather than "data", and about semantics rather than pragmatics. It's not "data contains procedures" but that objects are (a) semantically computers, and are impervious to attack from the outside (a computer has to let an attack happen via its own internal programming), and (b) what's inside can be…

> We had planned that the interior of objects should be an "address space of objects" because this is a better and more recursive way to do modularization Something that nags me in the back of my mind is that messages are not just any object, they always have the selector attached. Why not let objects handle any other object as a message? Is this what you mean by the above? Thinking about the biological analogy (mayb…

Take a look at the first implemented Smalltalk (-72). It implemented objects internally as a "receive the message" mechanism -- a kind of quick parser -- and didn't have dedicated selectors. (You can find "The Early History of Smalltalk" via Google to see more.)

This made the first Smalltalk "automatically extensible" in the dimensions of form, meaning, and pragmatics.

When Xerox didn't come through with a replacement for the Alto we (and others at Parc) had to optimize for the next phases, and this led to the compromise of Smalltalk-76 (and the succeeding Smalltalks). Dan Ingalls chose the most common patterns that had proved useful and made a fixed syntax that still allowed some extension via keywords. This also eliminated an ambiguity problem, and the whole thing on the same machine was about 180 times faster.

I like your biological thinking. As a former molecular biologist I was aware of the vast many orders of magnitude differences in scale between biology and computing. (A typical mammalian cell will have billions of molecules, etc. A typical human will have 10 Trillion cells with their own DNA and many more in terms of microbes, etc.) What I chose was the "Cambrian Revolution Recursively": that cells could work together in larger architecture from biology, and that you can make the interiors of things at the same organization of the wholes in computing because of references -- you don't have to copy. So just "everything made from cells, including cells", and messages made from cells, etc.

Some ideas you might find interesting are in an article I wrote in 1984 -- called "Computer Software" -- for a special issue of Scientific American on "Software". This talks about the subject in general, and looks to the possibility of "tissue programming" etc.

Re: Alan Kay is still waiting for his dream to come true

#228

Earlier quoted context omitted.

Hmm. So, it sounds like the same "keyhole" problem I've seen you talk about before (you used an AIDS epidemic as an example with this). What's seen is taken as "good enough," because the small perspective seems large enough. If there are any frustrations or tragedies, they're taken as, "It goes with the territory. Just keep plugging away." There's a parable I used to hear that I think plays right into this: Two peopl…

We are "story creatures" and it takes a lot of training and willpower to depart from "fond stories and beliefs" to "actually think things through". That the moon shot was just a political gesture -- and also relevant to ICBMs etc -- was known to every scientist and most engineers who were willing to think about the problem for more than a few seconds. We hoped that the -romance- of the shot would lead to the very dif…

And the story we tell ourselves today is, frankly, a dismal one. It's that all of computing should be invented and put into the service of "the economy" rather than people. Instead of a culture of "computational literacy" in which human thought is extended to another level to the same effect as written literacy hundreds of years ago, we have an environment of complex technologies that cater to our most base evolutionary addictions and surveil us for profit.

Our universities are no longer institutions where people learn how to think, but rather where they learn how to "do" -- usually "doing" involves vocational practices that already exist, especially those that some manager (ie provost or dean) deems economically important. This is why you have generations of programmers bitching about type systems instead of the very politics, history, and social consequences of their own wares.

We don't have funding like ARPA/IPTO anymore and the devices and software of our world show it. Everything is some iteration on ideas that came from that period, good or bad – iterations whose goal is always "efficiency" in some form. Our current political culture prevents big initiatives like this, because how on Earth would they benefit the economy in the short or medium term, the limits of our new horizon?

Because these technologies have been created in service of an economic system that has proliferated social problems, they can never be a meaningful solution to those problems. Sure, we might invent some new systems for dealing with environmental catastrophe, but they are always predicated on the assumption that people should consume more and more. We are at the behest of billionaires – smart ones, mostly – who understand complex systems but also have an interest in ensuring that they remain complex.

It is unlikely that we will achieve a new kind of transcendent way of computing until we change the way we think about politics and economics. That is our environment. That is the "fit" that our technical systems have, as you say.

Re: Alan Kay is still waiting for his dream to come true

#229
post #228

Earlier quoted context omitted.

We are "story creatures" and it takes a lot of training and willpower to depart from "fond stories and beliefs" to "actually think things through". That the moon shot was just a political gesture -- and also relevant to ICBMs etc -- was known to every scientist and most engineers who were willing to think about the problem for more than a few seconds. We hoped that the -romance- of the shot would lead to the very dif…

And the story we tell ourselves today is, frankly, a dismal one. It's that all of computing should be invented and put into the service of "the economy" rather than people. Instead of a culture of "computational literacy" in which human thought is extended to another level to the same effect as written literacy hundreds of years ago, we have an environment of complex technologies that cater to our most base evolution…

Clear thoughts and summary!

Re: Alan Kay is still waiting for his dream to come true

#230

Let me try to help this community regarding this article by providing some context. First, you need to realize that in the more than 50 years of my career I have always waited to be asked: Every paper, talk, and interview has been invited, never solicited. But there is a body of results from these that do put forward my opinions. This article was a surprise, because the interview was a few years ago for a book the in…

> I am calling for the field to have a larger vision of civilization and how mass media and our tools contribute or detract from it That would be nice. Unfortunately outside of Kay's rarefied circles, "the field" is close to being a Darwinian selection machine for the worst (most unimaginative, trivial, greedy, pusillanimous) traits. I've ducked in and out of various IT and development roles since the early 2000s. Ne…

See the comment by scroot above. It meshes with yours, but recognizes that the underlying culture has gone in directions that are undermining real progress and value of life. This is why I've put a fair amount of time along with many others in trying to get elementary education to a better place. I think we'll have to grow a few generations of "civilization carriers" to pull out. (And, yes, I've been staggered at the low place that much of computing has gotten to, but it is reflecting much larger cultural problems.)
Post reply on HN