Information about http://bit-player.org/bph-publications/AmSci-1997-01-Hayes-reinvent.pdf

COMPUTING SCIENCE …

Tags: adders, american scientist, anniversaries, architec, basic architecture, brian hayes, building blocks, casion, computing science, electronic mail, eniac, imminent birth, john von neumann, microprocessor, research triangle park, research triangle park nc, sigma xi, single processor, triangle park, vacuum tubes,
Pages: 6
Language: english
Created: Fri Aug 8 13:25:43 2008
Display cached document
Page 1
image
Page 2
image
Page 3
image
Page 4
image
Page 5
image
Page 6
image
                             COMPUTING SCIENCE


           REINVENTING THE COMPUTER
                                       Brian Hayes




                                   A reprint from

             American Scientist
             the magazine of Sigma Xi, the Scientific Research Society




                                  Volume 85, Number 1
                                January­February, 1997
                                      pages 16­20




This reprint is provided for personal and noncommercial use. For any other use, please send a
request to Permissions, American Scientist, P.O. Box 13975, Research Triangle Park, NC, 27709,
U.S.A., or by electronic mail to perms@amsci.org. Entire contents © 1996 Brian Hayes.
                                               COMPUTING SCIENCE


                         REINVENTING THE COMPUTER
                                                           Brian Hayes

                  he computing profession has been celebrat-          form in their basic architecture--the way they are

            T     ing birthdays--the 50th of the ENIAC, the
                  25th of the microprocessor, the 15th of the
           IBM PC (not to mention the imminent birth of HAL
                                                                      assembled from logical building blocks such as
                                                                      registers, adders and instruction decoders. Nearly
                                                                      all computers in widespread use today are recog-
           on January 12, 1997). The anniversaries offer an oc-       nizable descendants of the von Neumann architec-
           casion for looking back and marveling at how               ture, named for John von Neumann, who first de-
           swiftly computers have changed. Room-filling               scribed it in 1945. They have a single processor, a
           racks of vacuum tubes have collapsed into a sliver         memory that holds both data and instructions for
           of silicon. A few dollars at Toys R Us buys more           the processor, and facilities for input and output.
           computing power than all the world possessed in               The longevity of the von Neumann architec-
           1950. Punch cards, teletype machines and video ter-        ture is surprising and interesting, but I want to
           minals are all long gone; now we point and click.          consider the computer at a somewhat higher lev-
              But these dazzling transformations in technolo-         el of abstraction. The ordinary computer user, sit-
           gy, economics and the human interface may blind            ting down to write a memo or recalculate a
           us to aspects of computing that have changed little        spreadsheet, does not think of the computer as
           over the years--aspects that may in fact be overdue        an assemblage of registers and logic gates. Nor is
           for rethinking. There is much about the modern             it perceived as a box full of silicon chips and sol-
           computer that would have been familiar to the de-          der joints. For the typical user, the fundamental
           signers of the ENIAC and the EDVAC in the 1940s.           elements of the computer are less-tangible enti-
           Indeed, computers seem to grow steadily more ho-           ties, such as files, programs, windows, menus, di-
           mogeneous as the years go by, crowding into one            rectories, documents. These are the objects we
           small corner of a multidimensional "design space."         work with when we work with computers. Here I
           Perhaps there is a good reason for this trend toward       want to focus particularly on files and programs.
           uniformity--perhaps this one tight cluster of de-             A file is the basic unit of information storage in
           signs is where all the best ideas are found--but it        almost all modern computers. For most of its life, a
           seems worthwhile making at least a brief survey of         file sits inertly on a mass-storage medium such as
           some of the unpopulated wilderness areas else-             a magnetic disk. In this condition, the contents of
           where in the computer design space.                        the file are inaccessible. To get at the information,
                                                                      you have to open the file and copy it into random-
                              Religious Wars                          access memory (RAM). Once the file is open, you
           Of course computers are not really all alike. You          can read or display it. You can also alter it, but
           get to choose: Macintosh or Windows or Unix,               your changes will be preserved only if you then
           or perhaps something slightly exotic, like NeXT,           save the file, writing it back onto the magnetic disk.
           OS/2, Amiga, VMS, BeOS. I cannot claim neu-                Another important fact about files is that they
           trality in the ongoing hostilities among these fac-        have names; you can't create a file without nam-
           tions; I have my own partisan loyalties. And yet I         ing it, and generally speaking you have to know
           cannot help wondering, when I take a few steps             the name--or at least recognize it when you see
           back from the fray, if the present battle for domi-        it--in order to find the file again.
           nation of the desktop will not seem to later gen-             A computer program, from one point of view,
           erations about as compelling as the War of Jenk-           is just a special kind of file. It also resides inertly
           ins's Ear. Looked at from a certain height, most           on disk most of the time, becoming active only
           computers are very much alike.                             when loaded into RAM. And, as with other files,
              And it's not just that they look alike. (Some of        you need to know a program's name in order to
           them come in gray boxes now instead of beige!)             invoke it. But a program is executed, or run, rather
           Under the skin, computers are remarkably uni-              than opened; it is a file whose content is "machine
                                                                      code"--instructions for the processor that are
            Brian Hayes is a former editor of American Scientist.     generally indecipherable by the human reader.
            Address: 211 Dacian Avenue, Durham, NC 27701. Internet:      Programs and other files are usually organized in
            bhayes@amsci.org.                                         a treelike hierarchy of directories, or folders. Each

16   American Scientist, Volume 85
folder can contain not only files but also other fold-   This is not to be taken as evidence that users are
ers, which can contain still more deeply nested fold-    losers; on the contrary, it is a hint that something is
ers, and so on. This "file system" is what is in the     awry with the underlying concepts. Perhaps the
computer, from the user's point of view.                 flaw is in the desktop metaphor that dominates
   The concepts of file and program are surely fa-       most modern computer interfaces. After all, if you
miliar by now to schoolchildren everywhere and           leave a draft of a letter on a real desktop overnight,
to most of their parents. Indeed the ideas are so        it doesn't vanish when you turn the lights out.
much taken for granted that it's hard to imagine            Files bring further problems. Naming them--
what a computer would be like without them.              even if your computer allows you more than 8 + 3
But it's worth trying.                                   characters--can be an irksome chore. (In the pa-
                                                         per-and-pencil world, you don't have to dream
                   Lost in the Files                     up a name for every letter or memo you write.)
Why do files exist, anyway? Look at it from the          You also have to decide where to put a file in the
program's point of view. While a program is run-         directory structure. Should you organize your
ning, it can create all kinds of fancy data struc-       correspondence chronologically or alphabetical-
tures--arrays, lists, sets, trees, queues, etc.--but     ly? A year later, when you've forgotten both what
they all disappear the instant the program exits.        you named the file and where you put it, you dis-
The internal data structures are like the thoughts       cover the final drawback of file systems: the agony
or memories of a living person; they do not sur-         of retrieval. Even if you know where you're going
vive after death. Actually, the program's predica-       in the tree of folders, getting there may require a
ment is even worse, because a program dies and           long, tedious sequence of mouse clicks.
comes back to life repeatedly; each time it runs, it        Files, folders and the desktop metaphor were
starts with a blank slate. It is as if each night        all liberating innovations when they first ap-
when you went to sleep, you forgot everything            peared. The trouble is, they don't scale well. If
you ever knew. To cope with such recurrent am-           you have only a few hundred files, organization
nesia, you might try leaving yourself a note             is easy: You can keep everything on a handful of
where you could find it in the morning. That's           floppy disks. With a few thousand files, hierar-
what a program is doing when it creates a file. A        chical folders work well. But after a decade or
file is a program's way of communicating with            two of living in close symbiosis with a computer,
its future self.                                         you accumulate tens of thousands of files, and
   Historically, the reading and writing of files        they become a management challenge. Personal
have been viewed as input and output opera-              archives of gigabyte size are no longer unusual,
tions. In the early years, files were stored on reels    and the really big data sets--including those col-
of magnetic tape, which had to be mounted by             lected by astronomers, geophysicists and others
hand when needed. Thus the files were clearly            in the sciences--are soaring beyond terabyte ter-
external to the computer, just as a written memo-        ritory into the petabyte range. You would not
randum is external to your own memory. But the           want to explore 1015 bytes of files by clicking
boundary between inside and outside is not so            through nested folders. The nature of the prob-
sharp today. A disk file may well live inside the        lem is already clearly illustrated by the huge hi-
same plastic box as the processor, so that writing       erarchical file system called the World Wide Web.
a file no longer really seems like "output." On          I am not the only one who sometimes consults a
the other hand, you may have instant access to           search engine such as Lycos or AltaVista to find a
files kept on a server down the hall or on a Web         document whose location I already know; the
site across the continent, so that the whole ques-       search is simply quicker and easier than clicking
tion of where information is stored no longer            my way through a series of linked pages.
seems entirely germane. And if you needn't care
whether a file is stored on a local disk or a re-                             Persistence
mote one, why should you have to keep track of           One response to these problems is to graft a new
whether it is on disk or in RAM?                         interface onto the file system. Utility programs
   One answer to this question is that RAM is            that index and search for files have been prolifer-
"volatile": It goes pffft when you pull the plug,        ating, as have other shortcuts that keep recently
whereas magnetic disk memory endures until it is         used or frequently used files ready at hand. The
erased. But this distinction also gets muddled. In a     most sophisticated of these techniques can create
computer with virtual memory, information that           whole new views of the file system on the fly. For
appears to be in RAM may actually reside on disk;        example, even if you routinely organize your cor-
conversely, with a "RAM disk," files that seem to        respondence chronologically, you could summon
be safely on disk are actually held perilously in        up a "virtual directory" of all your letters sorted
RAM. No wonder that newcomers to computing               by recipient. (Virtual directories are an invention
often have trouble understanding the difference          of David K. Gifford and his colleagues at MIT; sev-
between permanent and ephemeral memory.                  eral other groups have explored related themes.)
They labor to create their first computer docu-             The more radical approach is to abolish the file
ment, and then forget to save the file before            system altogether, and with it the distinction be-
switching the machine off at the end of the day.         tween permanent storage and ephemeral memory.

                                                                                               1997   January­February 17
            Figure 1. "Lifestreams" organize personal documents chronologically. (Image courtesy of Eric Freeman.)


           Why should files alone have eternal life? Why              programming languages but also from database
           can't you jot down an address or a phone number            theory. This connection is not surprising, since a
           and have the note survive, without having to               database is, in one view, a large collection of per-
           name it and put it someplace in particular? Why            sistent, unnamed objects.
           should every reminder, doodle or Web clipping                 The key idea in a persistent-programming sys-
           require its own named slot in the storage bin?             tem is to make longevity an "orthogonal" proper-
              Looked at from the programmer's point of                ty of data objects; in other words, the same rules
           view rather than the user's, the issue here is the         for determining lifetime apply to all types of data,
           persistence of data structures. The alternative to a       from the simplest numeric variables to the most
           file system is to give every program the ability to        complex record structures. Every object is poten-
           create objects--a bit of text, say, or a record repre-     tially immortal; its actual lifetime is determined
           senting your rent check--that remain intact after          by an algorithm that throws things away when it
           the program has finished running, or even after            can prove they will not be needed again.
           the computer has been turned off. When the pro-               To make persistent programming work, long-
           gram starts up again, the objects are present in           lived data have to be moved at some point to a
           memory just as if there had been no interruption.          nonvolatile storage medium, and obsolete data
              Several programming languages have long of-             must be purged from permanent storage. But
           fered a form of persistent data. Smalltalk and             neither the programmer nor the user of the sys-
           APL, for example, allow you to save a "world" or           tem need be aware of these movements. It is
           a "workspace" and then later reload it, restoring          rather like the constant shuttling between disk
           all variables and other data to their previous             and RAM in a virtual-memory system, which
           state. But this is an all-or-nothing approach.             also takes place behind the scenes.
              More flexible techniques for working with per-
           sistent data have been a research topic in com-                                Filelessness
           puter science for more than a decade. Research             At least one mass-produced computer incorpo-
           has been particularly active in Scotland, where            rates a persistent-object system. It is the Newton
           persistent-programming systems have been de-               MessagePad, a hand-held "personal digital assis-
           veloped by groups at the universities of Edin-             tant" made by Apple Computer. Data objects in
           burgh, Glasgow and St. Andrews. Their work                 the Newton live in a "soup" (that's the technical
           has drawn on ideas not only from the theory of             term), where they do not have to be named or

18   American Scientist, Volume 85
deposited at a specific place in a hierarchy of doc-     the lower-level software that actually communi-
uments. For example, when you scribble notes             cates with the disk drive, files do not exist.
on a Newton--and "scribble" is the right word,             Furthermore, fileless computers are all around
since you write with a stylus instead of a key-          us; we just don't notice them much. They are the
board--every page goes directly into the soup.           "embedded" computers that run appliances, au-
Later you retrieve a note by searching for any           tomobiles and even some of the peripheral de-
word or phrase it includes. Documents can be             vices (such as modems and keyboards) attached
filed away if you wish, but there is no compul-          to other computers. Few embedded computers
sion to do so. Nothing is forgotten unless you ex-       have any need for a file system.
plicitly delete it; everything in the soup is equally
accessible at all times.                                                    Deprogramming
   Another vision of fileless computing comes            Perhaps we can hope to abolish files, but pro-
from the work of Eric Freeman and David Gelern-          grams are not to be swept away so categorically.
ter of Yale University, who have invented a soft-        A computer without programs is like a car with-
ware system they call Lifestreams. In the Life-          out fuel: at best an object of quiet contemplation.
streams model, documents are arranged in the             Nevertheless, there may well be opportunities to
simplest way possible: a one-dimensional, chrono-        change the way programs are built and distrib-
logical sequence. Everything you might ever look         uted, and the way they cooperate with one an-
at on the computer screen--incoming and outgo-           other. Under present practice, a program is an in-
ing e-mail messages, manuscripts, pictures, video        divisible, monolithic, opaque hunk of machine
clips, perhaps programs too--is stacked up from          code, which must be swallowed whole or not at
oldest to newest in one giant heap. At the source        all. It is a black box, which accepts inputs and
of the stream are your earliest records, going back      produces outputs, but which cannot be opened
perhaps to your "digital birth certificate." Current     up to see (or change) how it works.
documents are at the front. The stream can even              A new software technology offers hope of
extend into the future to hold documents that you        greater flexibility: It may not pry the lid open, but
will need someday, such as reminders.                    it could divide the one big box into several smaller
   At first, the Lifestreams model looks like an         boxes we can rearrange as needed. The govern-
exceptionally primitive file system, without even        ing metaphor is the component audio system. Just
the amenity of hierarchical directories. But the         as you hook up a tuner from one manufacturer
documents in the Lifestream are not files. You           with an amplifier from another and speakers from
don't have to name them (although you can if             a third, you should be able to link together soft-
you wish). You never have to save them; they are         ware components from different sources, and
retained as persistent data. You needn't find a          have them all work on the same document.
place for them in a tree of directories; they are            This basic idea has been known under a vari-
sorted automatically according to creation date.         ety of names, but recent attention has focused
But what about the problem of retrieval? If you          mainly on two schemes called OpenDoc and Ob-
wish, you can browse forward and backward                ject Linking and Embedding (OLE), introduced
through the chronological stack of documents,            by Apple and Microsoft respectively. What they
but the main means of access is through indexing         offer amounts to a change of perspective. Today
and searching. You find documents by issuing a           the program is the central fixture around which
query, rather like a command in Go Fish!: "Give          the computing universe revolves; you launch a
me all your letters to Bill written after November       program and then use it to create or edit various
5." In response to the query, the system creates a       satellite documents. OpenDoc and OLE are
substream consisting of just those documents             meant to put the document rather than the pro-
that satisfy the stated criteria. In this respect the    gram in the middle; you create a document and
Lifestreams system is much like a database, but          operate on it with whatever programs are need-
there is a further refinement. The substream itself      ed, calling on different software components for
is a persistent object, which remains active indef-      working with words, pictures, calculations, etc.
initely. If you later write another letter to Bill, it       The idea of combining many small programs
will automatically appear at the head of the sub-        to accomplish a task is hardly new. The Unix
stream as well as on the main Lifestream.                community has long favored "little" programs
   Freeman has built Lifestreams prototypes for          called filters, which can be linked in sequence.
Unix workstations and also, significantly, for the       But Unix filters are largely confined to working
Apple Newton.                                            on text files, with a very simple interface between
   The idea of a computer without files is not as        one program and the next. The new schemes are
big a departure as it might seem. In the first place,    meant to allow tighter integration of programs
files are an abstraction, or even an illusion, in        and a more interactive style of computing.
modern computers. We may imagine that a file                 Even if OpenDoc and OLE live up to their
occupies a definite place on a disk, adjacent to         promise, something vital remains missing. What
other files in the same folder. In reality, the disk     distinguishes the computer from other machines
sectors that comprise any given file can be scat-        is its programmability, but few users ever write a
tered randomly over the surface of the disk. For         program. No doubt the main reason is that few

                                                                                              1997   January­February 19
           are inclined to learn the arcana of the program-        manager could get excited about. This seems to
           mer's art, but it's also fair to say that most cur-     be the way that technologies evolve and mature.
           rent computer systems do not encourage tinker-              Look back at the early history of the automo-
           ing. A word processor or a spreadsheet comes            bile. At the outset there were cars propelled by
           with the software equivalent of a sticker that          steam, by electricity, by diesel and gasoline en-
           reads: "No user-serviceable parts inside." If you       gines; there were two-wheelers, three-wheelers
           don't like some detail about how the program            and four-wheelers; some were steered with a
           works, your only option is to write a new one           tiller and some with a wheel; some had hand-
           from scratch.                                           brakes and some footbrakes; the engine might be
              OpenDoc and OLE will not change this situa-          in front or in back or in the middle. That diversi-
           tion substantially for Macintosh and Windows            ty has disappeared. Apart from rare industry up-
           users. Writing an OpenDoc or OLE component              heavals--such as the switch from rear-wheel to
           will not be much easier than writing a stand-           front-wheel drive some years back--cars don't
           alone program. The Unix world has traditionally         change much. Today there are many makes of
           been friendlier to the inquisitive or meddlesome        automobiles, but few choices in technology.
           programmer. At one time every Unix system                   Radio has gone through a similar loss of
           came with complete source code, as well as the          species diversity. Radio enthusiasts of the 1920s
           compilers and other tools needed to rebuild or          could choose among the regenerative, the super-
           modify the system. But today most commercial            regenerative and the superheterodyne circuits.
           Unix systems do not include source code, and            But one of those designs (the superheterodyne)
           programming tools are an extra-cost option. (The        drove the others to extinction. What is more to
           remarkable Linux operating system, which be-            the point, no one today takes the least interest in
           gan as the project of a single young programmer,        how a radio works. (If you go to a store to buy
           Linus Torvalds, probably owes part of its popu-         one, don't bother asking the clerk if it has a su-
           larity to its distribution with full source code.)      perheterodyne circuit.)
              The computers that most clearly invited tin-             Will the computer meet the same fate? Will it
           kering were the "Lisp machines" of the 1970s            become an appliance or a commodity? Will it, in
           and 80s. Virtually all of the software for these        other words, become boring? That's the direction
           computers was written in Lisp and was open to           the industry is heading in, but I can see two glim-
           inspection and modification. The rule was: If you       mers of hope. The first glimmer is institutional:
           don't like the way it works, shut up and fix it. For    Computer science, as a discipline, is gleefully
           a while two companies (Symbolics and LMI)               undisciplined; there is still plenty of willingness
           were making rival Lisp machines; both compa-            to explore the occasional screwball idea. The sec-
           nies failed, although Symbolics has lately come         ond glimmer is theoretical: The computer has a
           back from the dead. There have been a few other         protean quality not shared by any other machine,
           attempts to build a language-centered computer.         certainly not by automobiles and radios. Just
           The Xerox Palo Alto Research Center created sev-        about any computer can put on a convincing im-
           eral machines programmed in Smalltalk; the              personation of any other computer. This talent
           Lilith computer, created by Niklaus Wirth, was          for emulation commonly allows a fancy Macin-
           based on Modula-2.                                      tosh or Unix workstation to masquerade as a
              The commercial failure of Lisp machines is           plain-vanilla Windows machine, but it can work
           generally attributed to an economic squeeze: The        the other way around as well. Perhaps we will all
           generic hardware of mainstream computers soon           end up with the most prosaic of computers, but
           offered better performance for less money, even         some of them may lead secret lives of adventure
           for programs written in Lisp. And yet the dream         and romance.
           of a single language for all computers will not go
           away. The latest embodiment of this ideal is the                               Bibliography
           Java computer. Java was conceived as a language         Adler, Richard M. 1995. Emerging standards for compo-
           for programming "set-top boxes," the devices               nent software. IEEE Computer, March 1995, pp. 68­77.
           that are meant to bring interactive network com-        Atkinson, M. P., P. J. Bailey, K. J. Chisholm, P. W. Cockshut
           puting to your television set; the language has            and R. Morrison. 1983. An approach to persistent pro-
                                                                      gramming. The Computer Journal 26:360­365.
           since experienced a tremendous surge of interest
                                                                   Freeman, Eric. 1995. Developers corner: Lifestreams for
           as a medium for distributing "applets," or small           the Newton. Mobilis: The Mobile Computing Lifestyle
           application programs, over the Internet. Several           Magazine. 
           interpreter built in, and specialized hardware for      Freeman, Eric and David Gelernter. 1995. Lifestreams: A
           running Java programs is under development.                storage model for personal data. ACM SigMOD
                                                                      Bulletin 25(1):80­86. 
                     The Secret Lives of Computers
                                                                   Gifford, David K., Pierre Jouvelot, Mark A. Sheldon and
           Most likely, none of these radical new ideas--nor          James W. O'Toole, Jr. 1991. Semantic file systems. In 13th
           the radical old ones!--will catch on. It's a good bet      ACM Symposium on Operating System Principles, October
           that computers will grow more and more alike,              1991. 


20   American Scientist, Volume 85