Alan Kay

30 Oct 2021 02:15 - 19 Jun 2023 08:52
Open in Logseq
    • Bob Barton, the main designer of the B5000 and a professor at Utah had said in one of his talks a few days earlier: "The basic principle of recursive design is to make the parts have the same power as the whole." For the first time I thought of the whole as the entire computer and wondered why anyone would want to divide it up into weaker things called data structures and procedures. Why not divide it up into little computers, as time sharing was starting to? But not in dozens. Why not thousands of them, each simulating a useful structure?... I recalled the monads of Leibniz, the "dividing nature at its joints" discourse of Plato, and other attempts to parse complexity.
    • What Doug Engelbart's system could do then—even by today's standards—was incredible. Not just hypertext, but graphics, multiple panes, efficient navigation and command input, interactive collaborative work, etc. An entire conceptual world and world view. The impact of this vision was to produce in the minds of those who were "eager to be augmented" a compelling metaphor of what interactive computing should be like, and I immediately adopted many of the ideas for the FLEX machine.
    • From Doug Lenat's chapter:
    • In traditional software—both then and now—such modules are subroutines, functioning together like the parts of a car engine function together: the ensemble of subroutines is flowcharted, engineered to work together in completely well understood interactions to solve a particular class of problem. Their “range of independent thought” is as null as, say, a carburetor’s. In the early 1970s, Alan stretched that paradigm and warped it into a new one, imagining the subroutines not like the parts of a mechanical device but more like a set of humans tasked with solving a problem, where one might relax the degree to which their actions and interactions are prescribed. As with human beings, Alan reasoned, it might be worth educating the modules— investing resources in making each module smarter and more flexible—and then relying on the resultant community of agents to solve problems in ways not fully preconceived by their developers. In other words: make them smarter, better informed, give them higher level responsibilities, and then give them more freedom to meet their goals. This zeitgeist thundered through Carl Hewitt’s ACTORS [43], Seymour Papert ’s LOGO [51], my own BEINGS [46], and of course Alan Kay and Adele Goldberg’s Smalltalk [40], and has reverberated ever since, sometimes explicitly as in the case of Mixins (in Lisp Machines FLAVORS [52] and, more recently, in Java) and sometimes almost unrecognized as in the case of Expert Systems [42] and, more recently, the Semantic Web.