Lisp50 Notes part I: JonL Recalls How Sussman Revealed the Nature of Intelligence…

This was a totally different crowd than what I saw at the DSM workshop. There were lots more Americans here. You had a mix of bearded Lisp Hackers, a few not-yet-middle-aged guys who were running significant projects, and then some younger guys that were either still in college or were not out for very long.

To understand the conference, you’ve got to understand the backdrop. I’d just sat through a day of presentations that were mostly focused on Java, Eclipse, and UML diagrams. The “last word” of the day was from a Small Talk programmer who said that the competing tools in his area of work had not improved upon the solutions that he’d had 15 years ago or so. Educators attending the symposium were talking over lunch about how they couldn’t find good examples for applying some of the concepts they were teaching. Anybody I met, I would say to them: “I can’t believe I’m going to see John McCarthy and Alan Kay tomorrow!” This didn’t mean anything really to most people I tried to chat with. Collectively, the net effect of the preceding day was to produce a mild sensation of frustration, disappointment, and alienation.

I was nearly late for the opening session of Lisp50. I rushed in just barely in the nick of time… only to find that Lisp50 was starting ten minutes late or so. There was no posting of the schedule anywhere that I saw while the workshop I was in the previous day had a copy of the schedule at every seat and even a booklet of all the papers to be presented. Add to this the fact that many of the Lisp speakers had some sort of trouble with their Power Point slide and that there was no slot on the schedule for a break for an evening meal… and it just appeared that collectively the Lisp community was doing everything it could to meet its own stereotypical expectations!

So the first “talk” was Guy Steel and Richard Gabriel re-enacting a talk they gave back in 1993. This was amusing in places– the audience laughed in most of the same places as the 1993 audience did– but it was a little frustrating. I mean, we have Steel and Gabriel on stage… and they’re reading. I want to know what they have to say about right now. I want them to preach to the choir. I want them explain how to finally win the “language wars” and why it matters. Something. Anything! Instead we get a play by play of how Lisp communities evolved and coagulated in the seventies and eighties. The net effect of this was to leave the impression that we’re reduced to the significance level of, say, a confederate civil-war reenactor. The battle is over. We lost. There’s nothing left but pin down the final details of the history of our side so we can bury it all. Yes, that’s it… that’s is exactly. I felt like I was at a funeral! This “talk” set a tone that our proceedings were going to be more about nostalgia than anything else. (I’m not saying this wasn’t interesting… I’m just talking about the tone here given the context. Maybe I was the only one the felt this way, but I think the general pulse of the crowd was mildly uncomfortable because of these sorts of unspoken memes floating around in our collective unconsciousness.)

JonL White was the next speaker. I simply cannot do justice to what he said and what he represents. Suffice it to say, if all you know about Lisp is some stuff you read in a Paul Graham essay and a few textbooks here and there… then you really don’t know anything. This man has a tremendous intellect… and has had a hand in nearly everything as far as Lisp is concerned. (Did I see that right on the slide of specific language contributions that he was responsible for defun? I wish I had that slide….) Fifty years from now, I’m going to be telling people, “I saw JonL at the Lisp50 conference.” I cannot do justice to this guy’s presentation, so here’s just a few tidbits:

* He used several Alan Perlis quotes to set the tone. These were all great quotes; the same ones from SICP that inspire me so much. JonL really misses Perlis.

* He mentioned something about dealing with the archetypal “bipolar Lisp programmer” types on the job and exclaimed, “how can you supervise a Lisp guy?! You just take what he does…!”

* JonL was responsible for hiring Stallman at the MIT AI Lab. Stallman has contested this and claimed that some random administrator was responsible. JonL explained that the administrator’s don’t decide anything– the way you get in is by making friends with someone in the lab.

* JonL encouraged us all to go to the International Lisp conference. “Lisp is the back forty for a lot of people,” he said. (That is, you do whatever you need to do when you work for the master, but if the work is for yourself, a lot of people tend to do it in Lisp.)

JonL spoke about growing up in the Ozarks. He talked about how his parents influenced him intellectually and genetically. He talked about how racist everyone was there and how he took the slurs personally somehow…. He talked about how he ended hanging out with Jews and how he sort of became, as it were, an “honorary Jew” because they figured if he was so smart, he must be a Jew, too. (I’m trying not to mangle this too badly.) So Sussman asks him one day, “Why are Jews so smart?” Now, JonL was pained at recounting the answer he gave. He confessed to having picked up on some the racism that was endemic to the Ozarks. “Uh… must be their genes,” he’d said back then. Sussman was very irritated at this answer. “WRONG,” he said, “it’s the LAW!”

I have no idea how many people “got” this. JonL wasn’t too sure either. The default assumption is that we’re all rabid libertarians and atheists, I suppose. JonL explained that Sussman was referring to the Torah… the Jewish scriptures. Sussman argued that because Jewish fathers are required to teach their children how to read and write– so they could understand the Law– that this somehow gave them a fantastic intellectual foundation. JonL referred to a talk that Sussman gave somewhere– it was extemporaneous, but better than most prepared talks. (I want to see this talk if anyone finds a recording!) JonL was totally blown away by this talk… the best thing he’d ever heard. But in it, Sussman argued that intelligence was transmittable and improvable. Somehow, if you can (legitimately) learn more words, you expand your ability to think. This tied into symbolic thinking being about giving names to things. (This reminds me of that strange story in Genesis about Adam naming the animals in the garden of Eden.) Sussman said, “great ideas can be understood by an ordinary person.”

(That’s a very encouraging thought. I suppose there’s hope even for us “average developers.” This is all the more reason to continue learning a new programming language every year or so. It kind of gives one a little more respect for all of those among the USA’s founding fathers that could read and write Latin, Greek, and Hebrew….)

JonL had spoken earlier about how he’d gotten a great prep-school type education even though he grew up out in the middle of nowhere in the Ozarks. Farming and industry were all dead there, but… they still had this heritage of education. JonL pointed out how, for us Americans, this traces back to the Puritans. The fundamental concept of our form of government is that man’s government cannot work. That’s why you have all of those checks and balances– those Puritan-types did not trust man to get things right! (Note to self: compare and contrast this with socialism sometime. Try not to use the word “hubris” gratuitously.) Our education was meant to provide a check on our untrustworthy governmental institutions– but just look at how things are developing in, say, the California public schools.  Things do not look good; we’ve lost something….

That’s the gist of JonL’s talk based just on my hasty and imperfect notes. (That last “tidbit” sort of raged out of control there….)  Please feel free to post corrections and clarifications if you feel they are required.  I didn’t get the feel that he was a raving evangelical or anything, but I was surprised by the philosophical bent to his talk.  But what do you expect from a guy that cuts off his tie with a pair of pruning shears…!

11 Responses to “Lisp50 Notes part I: JonL Recalls How Sussman Revealed the Nature of Intelligence…”

  1. Brit Butler Says:

    I’m not sure what talk JohnL is referring to but it sounds VERY similar to a talk Sussman gave at Ars Digita University (http://aduni.org/colloquia/sussman/). Unfortunately the talk is in RM format (ftp://ftp.aduni.org/videos/08_Sussman.rm) but it is fantastic and Sussman covers much of the material described above. I expect you’d find some of the other material at aduni.org useful if you weren’t already aware of it. Happy hacking!

  2. Daniel Says:

    Thanks for sharing with us, the ones who couldn’t be there, a bit of the excitement.

  3. Dave Newton Says:

    It’s nice for those of us that *were* there, too 😉

  4. Mark Miller Says:

    It’s good to know what JohnL said about understanding Lisp. Did he recommend anything for truly getting it? It sounds like a talk I would’ve enjoyed.

    It’s heartening to know that “great ideas can be understood by an ordinary person.” That’s something I’ve been trying to test on myself. In some ways I think I’ve succeeded in proving this right, but I’m not totally convinced yet. I wonder about the flip side of this. Can an ordinary person create great ideas?

  5. lispy Says:

    I’m sorry to say, but the giants of Lisp have a concept of evangelistic outreach on par with the Old Order Amish. (In other words, they simply don’t have one.) Pascal Costanza, for example, was not interested in the political battles that sort of thing entails. Fritz Kunze was practically nuked after suggesting they go after the Website DSL market.

    Granted, education was simply not on the agenda, but my overall feeling after being there from 8AM to 9PM is that it’s still all on me to dig in and discover for myself the power embodied in leveraging a language’s abstract syntax.

  6. Mark Miller Says:

    @Lispy:

    I wasn’t thinking so much evangelism as education. I understand that in terms of design it’s got to come from within each of us. Tutorials/documented examples would be nice, but I understand that if nothing else there’s plenty of Lisp source code to look at.

    I was thinking in terms of books, and web sites that talk about the nature and mechanics of Lisp and its metasystem.

  7. lispy Says:

    It is the heterogenous culture that is so hard for a newcomer to come to grips with. That, plus the fact that everything a newcomer tends to take for granted about programming is WRONG. Not only do you have to learn, say, Emacs… but you also have to learn that the things you want in a ‘real’ IDE are often the wrong thing as well. (“No… you don’t want tabs in your Emacs. No… we don’t want to explain to you why buffers are better. Move along now please.”)

    Compare this to, say, Dolphin Smalltalk. It’s weird, but you at least know up front that you can make Windows DLL’s and EXE’s. With Lisp you are afraid to even ask about such things!

    So… to be learning basic computer science, a new text editor with a steep learning curve, a new language, *and* to be crippled in terms of being unable to immediately do things that you took for granted back in Blub or whatever…. It’s a lot to take on at once. There are many great books… but when they’re all twenty years old, it’s just not so easy– classics though they may be.

    My path has been to learn Perl first. Wrapping my head around the language was trivial when compared to learning Lisp. O’Reilly has a comprehensive 4 book tutorial series which makes it easier as well. In the process, I discovered all kinds of problems around the IT shop that could be solved by any language at all. When I go back to studying Lisp again, I won’t waste time reinventing Perl in it and I will have tons of places I can begin to apply it on a day-to-day basis if I want. (Plus… I think I am ready to grok Seibel’s Practical Common Lisp– I don’t think I was ready before.)

  8. Mark Miller Says:

    @Lispy:

    I know what you’re talking about. I can understand why Squeak, for example, is an alien environment. There are no “source files” or directories. All source code is stored in a “changes” or “sources” file. It’s fairly easy to find the source code you’re looking for, even modifications you’ve made, because all of it is cataloged and labeled in the system, but you have to know where to look for it. The idea that “everything is an object” is a hard one for people to grasp, too. Most users and programmers are used to some things being invariant. With Smalltalk you can change anything you want in most of the system, on the fly. It’s the same with Lisp.

    One of the lessons I learned is this is dangerous, too! It’s easy to delete a class that’s part of the kernel system in Squeak, causing instability. The cool thing is there are many avenues for recovering from a mistake like this.

    I got a book to help me out when I started with Squeak. It is a culture shock. A lot of people walk away from it because it feels too weird and unfamiliar. I tell people it’s like travelling abroad to a different culture. You feel disoriented. Some things look familiar, but they’re not very helpful, or work differently than you’re used to, creating cognitive dissonance and frustration.

    The most common complaint I see is “it’s a walled garden”. Their conception of it is always that it’s a “programming language”, and a weird one at that. They can’t figure out why it insists on them using its IDE, its debugger, its version control system, etc. I see this even from people who have worked with Smalltalk for a few years. IMO they never got it. I heard the “walled garden” complaint so often I got frustrated and wrote a post saying, “In case you haven’t figured this out yet, it’s not just a language/VM. It’s like an operating system!” It was gratifying, because a few people actually thanked me, saying it really cleared up some things.

    As far as friendliness to newbies, I’ve had better luck in blogs than in mailing lists/newsgroups. For example I learned through a blog that there was actually a reason that the browser in Smalltalk only shows you one method at a time in the code editing pane. I can’t remember what it was at the moment, but I think it had to do with getting across the message that each method represents a distinct behavior for the object, and that it should be loosely coupled from other behaviors of the same object. And I think according to Kay’s conception of OOP objects should have identity, but programmers should avoid having objects maintain state.

    From the screenshots I saw, Dolphin looked like a “Smalltalk for Windows”, because it treated the Windows desktop as its desktop (as opposed to having its own, which is typical for Smalltalk environments), and the browser, debugger, and any windows you opened looked like Windows apps. Yep, in most Smalltalk implementations there are no such things as DLLs, EXEs, COM objects, etc. In some implementations it’s possible to interact with these things. Squeak for example has an FFI.

    At first I saw Squeak as a “system with features that would make writing apps. easier”. That was a pop culture mentality. Somehow I came to learn that I needed to understand the ideas behind it to better grasp its power. So I got away from programming it for a while, and focused on that. I’ve been trying to “get my head out of the computer,” where it’s the most important thing to be learning about, and see it in a larger context. Once I felt I had sufficiently expanded my POV for a while, I’ve gradually been getting back into learning about programming. The problem I have is I would dearly love to learn how to do the more powerful stuff, but all I’ve known is the weaker stuff, so it’s been difficult for me to break out of the old patterns. One reason is I have yet to find good material on the metasystems of either Smalltalk or Lisp.

  9. DenkZEIT : Zum 50. Geburtstag der Mutter aller Programmiersprachen: Lisp50 Says:

    […] Einstieg findet sich unter Lisp50 Notes part I: JonL Recalls How Sussman Revealed the Nature of Intelligence. Die Serie findet ihren Abschluß mit Lisp50 Notes part VI: The Future of […]

  10. Dusty Decks » Blog Archive » Notes from Lisp50 Says:

    […] JonL Recalls How Sussman Revealed the Nature of Intelligence… […]

  11. manu Says:

    You should read “Amusing ourselves to death” by Neil Postman, if you are interested in the importance of litteracy in the 16th and 17th century in the US. As a non american my knowledge of US history is near zero and I found it fascinating…

Leave a comment