Ted Leung on the air
Ted Leung on the air: Open Source, Java, Python, and ...
Ted Leung on the air: Open Source, Java, Python, and ...
Sun, 11 Jul 2004
I found watching this video of the Croquet project to be a depressing experience. I had seen a number of references to Croquet, both from Smalltalk and Lisp blogs. I'm going to credit Dave Roberts at Finding Lisp with my depression, since he commented on Alan Kay's QA session afterwards, which is what pushed me over the edge to go and look at the video. Here's an article if you can't spare the time (90 mins). The video itself was a challenge, because it is encoded via some Microsoft Windows Media player codec that doesn't exist for the Mac version of Windows Media Player 9. So I had to fire up my Windows box in order to actually be able to watch it and hear the sound. Croquet is a 3d realtime collaboration engine written in Squeak, which is an open source Smalltalk-80. You can walk through a virtual world, much like many MMORPG's such as Everquest. The environment was smooth and fairly realistic, which is an interesting accomplishment by itself, given the supposed performance problems of languages implemented via virtual machine. I was more interested to learn that they've built a peer-to-peer collaboration architecture which allows their system to be usable between Germany and Los Angeles. The architecture is based on replication ideas from David Reed's 1978 PhD thesis. Apparently, Kay had been trying to get Reed to implement the ideas in his thesis for many years. This is the first time these ideas are appearing in public, at least that's the impression I got from the video. Right now they are using TCP/IP, but Reed is working on a UDP based P2P protocol for future versions. There was a brief tangent on security, and Kay said that they are interested in security model that is based on capabilities. Croquet will be available (September?) under an open source license. I learned a few things about Squeak. The Squeak VM runs on about 30 platforms and runs the same (bit for bit) image on all of them. Apparently the VM is auto-generated in some fashion. Given the effort required to port the Java VM to a different platform (I did some of the work to get Java running on the Newton at Apple), this is pretty impressive. So what did I find depressing? During the QA session, Kay took stock of the state of computing today:[01:35] | [computers/programming] | # | TB | F | G | 22 Comments |
When they set out to build Croquet, they intended to do it in Java, but they felt that they had to abandon it because it lacked (and still does) the meta facilities that they needed. Instead they chose to use Squeak. They had to go back to 1970's technology. Kay regards this as a disaster. All languages, Smalltalk included, are bad for this day and age. We essentially haven't learned anything since 1975 when the last interesting feature was added to Smalltalk. Almost nobody today is trying to implement anything in a late bound architecture. Hardware is less efficient today than it was in the PARC days -- Squeak is only 50 times faster than it was on the Dorado, yet we've had 15 turns of Moore's law. OpenGL is the best thinking about 3D circa 1972 at the University of Utah. At least it doesn't get in the way too much.Other interesting observations:
Lisp is the number one programming language idea of all time. Smalltalk's contribution was to build encapsulation on top of the ideas in Lisp. Someone asked a question about the market voting or something like this. Kay's reply went something like this: Most people don't understand Lisp -- does that make it bad? Most people understand Maxwell's equations -- does that make them bad? [update: Lars R. provided the exact quote in the comments - Thanks!] One of the things that Kay is doing now is just going around and giving talks to remind people of the great ideas in Lisp and Doug Engelbart's work Kay believes that the future of programming languages lies in AI KR (Knowledge representation) languages. He cited Cyc's CycL and the ART forward inferencing system (now owned by Mindbox) as examples. One of the last big ideas at PARC was what is now known as Aspect Oriented Programming. Bobrow and Goldstein worked on an extension to Smalltalk called PIE, which Kay called the best addition to Smalltalk. Kay also mentioned his Etoys work. Kay felt that there was a huge value in being part of the particular kind of research community that was fostered by PARC/ARPA, which doesn't exist anywhere anymore. It's hard to find with the right people to argue in the right way. He felt that point of view (via the community) was worth an additional 80 IQ points. Someone in the audience suggested compiling Squeak/Smalltalk to/via FPGA's. Kay felt that this would be a very productive approach.Much as I love Lisp, it seems to me that the Smalltalk community, led by folks like Kay, are continuing to demonstrate a convincing agenda for forward progress, while the Lisp community is perennially struggling with basic infrastructure issues like which dialect of Lisp/Scheme, which windowing environment, etc. Perhaps this is due to the conception of Smalltalk as a system, in addition to a language.
Open Access Journal for Programming Language theory
[ via Lambda the Ultimate ] I've written before about "open source" journals and wished for some in Computer Science. Logical Methods in Computer Science is such a journal for the theoretical aspects of programming languages. The journal hasn't quite launched yet (September 2004 is the date given for the disabled functions). Still, this is very encouraging, and I hope that this will be very successful. The link to "The Landscape of Open Access Publishing" also lists the Journal of Aritifical Intelligence Research (JAIR) as a successful open access journal which has attained credibility in its area.[00:07] | [computers/open_source] | # | TB | F | G | 0 Comments |
Ken is writing about his experiences with various hotels. I am very grateful that I don' travel at the level that Ken does. Working at OSAF does mean that I'm traveling more than I have ever done before (of course, this is more than offset by the fact that I have zero commute when I'm not travelling). One thing that Ken commented on was on the morning wake up calls[00:06] | [misc] | # | TB | F | G | 0 Comments |
On the other hand, the Hyatt has something I haven't encountered for a while: a real person making the morning calls. More and more hotels have automated systems for this: you call the number for the wake-up service, and a recorded voice tells you to punch in the time you want the callback. And when it comes, there may or may not be another recorded voice saying, "This is your wake-up call." The Hyatt had a real person (or a bloody good facsimile) take down the request, and when the call came, it was another real person (or facsimile). I don't think I have a preference for one method or the other, but this was uncommon enough to notice.Actually, I regard the automated callback as a real benefit. I invariably remember that I need a wakeup call sometime after midnight, and I always feel guilty when I call late in the evening to request the wakeup. The automated system probably saves the hotel some money, but it also allows me some flexibility, which I appreciate.