Subscribe to our Erlang Factory newsletter to receive the latest updates and news

Dan Ingalls
The principal architect of five generations of Smalltalk environment
SAP

Speaker
Dan Ingalls is the principal architect of five generations of Smalltalk environments. He designed the byte-coded virtual machine that made Smalltalk practical in 1976. He later conceived a Smalltalk written in itself and made portable and efficient by a Smalltalk-to-C translator, now known as the Squeak open-source Smalltalk. Dan also invented BitBlt, the general-purpose graphical operation that underlies most bitmap graphics systems today, as well as pop-up menus. His most recent work, the Lively Kernel, is a dynamic graphics and programming environment that runs entirely in a browser. Able to save its results and even new versions of itself as web pages, it offers the promise that wherever there is the web there is authoring. Dan received his B.A. in Physics from Harvard University, and his M.S. in Electrical Engineering from Stanford University. He is a recipient of the ACM Grace Hopper Award, and the ACM Software Systems Award.

Dan has recently joined SAP and is a key member of the Chief Scientist team guiding the company’s technology vision, direction and execution.

Dan's Blog
Lively Kernel
Squeak
Smalltalk

Twitter: @daningalls

Dan Ingalls is Giving the Following Talks
From Metacircular IDE to End User Programming, It's just not that hard

The first part of the talk is a quick tour of The Lively Kernel - a complete metacircular IDE written in JavaScript, and thus *just* a web page, able to run without download or installation.

My reason for wanting to speak to the Erlang community is that Erlang shares with Smalltalk and JavaScript the ability to update methods on the fly, and thus to support a lively (ie self-describing and editable) IDE.  The talk will communicate that this is not terribly difficult, and that it is both a fun and a valuable pursuit.

The second part is a quick tour of what it takes to do a similar metacircular job of supporting End-User Programming (Drag-and-drop UI construction together with simple scripting of application logic);  again, it is not that hard -- something any of you better Erlang jocks could have a lot of fun with.