Dan Ingalls

2022 Fellow

For the creation and co-development of the Smalltalk programming environment and the promotion of object-oriented programming

The key to creativity is the ability to make unanticipated connections.

— Dan Ingalls

Most of the modern world is built using object-oriented programming languages. One of the most important of these is Smalltalk, a language first developed in the 1970s by Dan Ingalls, Adele Goldberg and Alan Kay. For many programmers, Smalltalk was a supernova in the programming universe, offering a completely new way to think about programming. Most of today’s popular applications, from mobile apps to cloud services, are now written in an object-oriented language.

Daniel Henry Holmes Ingalls Jr. is an American computer scientist who has made pioneering innovations in object-oriented programming and computer graphics. He was born in 1944 in Washington DC, where his Sanskrit scholar father had been drafted to the OSS for code breaking work during World War II. After the war, his family returned to Cambridge, Massachusetts, where his father taught at Harvard, and Dan Jr. attended school. Dan earned his bachelor’s degree in physics from Harvard in 1966 and his master’s in electrical engineering from Stanford University in the following year. He dropped out of the PhD program to sell a profiling tool that he had developed, and joined Xerox PARC in 1971.

At Xerox PARC, Ingalls began a life-long association with Alan Kay, implementing the first Smalltalk in 1972. His subsequent design of the Smalltalk-76 virtual machine made Smalltalk compact and efficient, and was the foundation of the public release of Smalltalk in 1980. Smalltalk-80 spread the core idea of object-oriented programming, constructing a program as a set of independent components that interacted with each other through message sending, to the wider computer industry, ultimately influencing the most popular languages in use today, including Python and Java.

As part of his work on Smalltalk graphics, Ingalls designed and implemented the BitBlt (bit block transfer) graphics primitive enabling fast and flexible bitmap graphics operations. The BitBlt operation was key to the fast implementation of the drawing of text, lines, windows, pop-up menus (which Ingalls invented), and animation on the Xerox Alto and later bitmap graphics workstations and personal computers like the Xerox Star and the Apple Macintosh. In other words, BitBlt was the building block for the graphical user interfaces (GUI) of these transformative new computers.

In 1984, Ingalls left Xerox PARC to join Apple’s Advanced Technology Group. There he continued his work on Smalltalk and designed the Fabrik visual programming environment. Fabrik allowed one to wire together visual components that were always live, and the resulting applications could be saved and deployed independently thereafter.

After a seven-year hiatus from the industry to run his family’s resort in Virginia, Ingalls returned to Apple in 1996 to design Squeak, a version of Smalltalk that was written in itself. The radical portability of Squeak led to compatible open-source implementations of Smalltalk for Windows, Mac, and Unix just over a month after its publication.

Ingalls moved with Alan Kay to Walt Disney Imagineering to continue work on Squeak as a vehicle for the development of Etoys, a new graphical computing environment for children. Etoys was featured in the One Laptop Per Child project and inspired the Scratch programming environment developed at MIT.

After a year at HP and some time as a consultant for Alan Kay’s Viewpoints Research Institute, Ingalls’ next major project, as Distinguished Scientist at Sun Microsystems, was to invent and develop the Lively kernel—a JavaScript-based development system that runs live in any browser. Just as in Squeak, Lively allowed users to make changes to a web application while running, and results could be saved at any time as an active web page.

Ingalls continued this work on Lively as an executive vice president in SAP’s Office of the Chief Scientist, and subsequently as a principal investigator at Y Combinator. Using Lively, Ingalls has reimplemented a series of in-browser Smalltalk emulations, from Smalltalk-72 to Squeak, which he calls a “Smalltalk Zoo,” and this is now hosted in collaboration with CHM.

Among a number of awards, Ingalls received the 1984 Grace Hopper Award for his work on Smalltalk and BitBlt.

Share

FacebookTwitterCopy Link