Rob Blackwell home projects resumé archive

International Lisp Conference 2005

26 June 2005

I’ve just returned from the International Lisp Conference 2005 at Stanford University.

Stanford University

I’m pleased to report that the Lisp Community is alive and well and still full of colourful characters and interesting people.

I’m used to computing conferences being high budget affairs with lots of stands (TechEd, Devweek), but Lisp only has two real vendors, Franz and LispWorks and whilst both companies were present they were fairly low profile; this conference was about Lisp developers sharing ideas, not having marketing messages drilled into them – very refreshing!

Alex Peake showed how his company Comac is using generative programming to get big productivity gains when developing .NET applications. The .NET community seems to be content with employing armies of programmers to churn out tedious GUI and database access code. These patterns can be identified and abstracted to good effect. Alex was kind enough to mention LSharp. He is also a technical director of a software house and we had some interesting discussions about disruptive technology, recruitment, Language Workbench etc. I thank him for his encouragement of my L Sharp endeavours.

Richard P Gabriel‘s talk on Conscientious Software was excellent and very inspiring. We need to start thinking of software that can take care of itself and ’not just sit their like a toaster’. Think Autopoietic not Allopoietic. It was a reminder that we are still in the infancy of Software Development.

Will Clinger’s talk concluded with ’We’re the Common Larceny team, boy do we have a Scheme for you’. These guys have a Scheme implementation running on the CLR with reflective invocation and even a Tiny CLOS. In many ways they are working on the same problem as LSharp, just that they are coming at it from an Academic perspective. I think that L Sharp has a cleaner syntax that is more accessible by .NET people, but Common Larceny is further ahead in terms of implementation.

Harold Carr’s talk on LLava highlighted the language design challenges faced when developing new dialects of Lisp. His principle of ‘maximum leverage of Java – only add what is missing or cannot be done in Java’ makes for an interesting syntax which he is still grappling with.

Talks about Kawa and CLforJava underlined the level of interest there is in having Lisp dialects running on mainstream virtual machines.

Franz presented their forthcoming AllegroCache product. It’s a persistent object database that’s really well integrated into CLOS and has impressive performance and scalability. There will be a SQL interface, but they showed querying it with their embedded Prolog. I’d like to get my hands on this for some work at Active Web Solutions. I’m now the proud owner of a (got-lisp-p) T Shirt.

There are many cool Lisp applications out there and we saw demos of the following to name a few; Bio Lingua, Honda crash test analysis, particle accelerator management and NASA autonomous helicopter.

When I first worked for BT’s Research and Development in the early nineties, there were great expectations for AI, expert systems and natural language processing. It seems that some of the goals have been quietly achieved, with the Langutils demo showing a high degree of competence in natural language understanding and common sense reasoning.

I met Patrick Dussad, Chief Architect for the Common Language Runtime at Microsoft. He had downloaded LSharp and liked it. He gave me plenty of good feedback including the need to be able to define classes and methods; too much consing; the need for a compiler, CodeDom etc. We discussed the fact that you can’t currently garbage collect dynamically generated code; this is fixed in a forthcoming CLR and the workaround is to unload the AppDomain. He said that I could email with questions and that he would try to get answers for me.

I asked him about the CLR implementation and he confirmed that the Garbage Collector had been prototyped in Lisp before being put through a Lisp to C translator.

In his talk, Patrick called for a new, modern lisp implementation on the .NET platform and shared his ideas about how he would go about this task if he had the time. There was quite a lot of negativity and hostility from the audience which is a real shame. Somebody said that the Lisp Community was waiting for the mainstream to find them and that there was no need to change; I think this is a head-in-the-sand view. Patrick said that if the Lisp Community didn’t fill the dynamic language void on the .NET platform, somebody else would. I think that if we could provide a kind of ‘cut down’ Lisp on .NET, that would be very useful in itself and would probably be a signpost to help more people discover Common Lisp. I think any community has to adapt or die.

Here are some other observations about California life:

The Internet is ubiquitous here (more so than the UK) – hotel rooms with free broadband, Wireless just about everywhere campus-wide.

I’m a part time Apple Mac user. I’d read Paul Graham’s piece on Return of the Mac saying that all the best hackers are now on Mac, but I was amazed at just how widespread Apple was in the whole of the Bay Area. Wherever I went it seemed that Apple was there – either on the advertising boards or there’d be somebody using a Mac at a coffee shop. Macs and IPods are fashion accessories as well as functional devices. In the Stamford Computer Shop the whole focus was Apple; yes you could buy a PC, but PC’s are just not appealing any more. I also came across three Apple stores – one in Palo Alto, one in Stanford Shopping Centre and one in San Francisco. All were doing a roaring trade. All were appealing to the man in the street rather than techies per se. I particularly like the idea of being able to book an appointment at the Genius Bar – a kind of clinic where you can get advice from and apple expert.

We concluded with a couple of days in ‘The City’ (San Francisco) to do the usual tourist stuff and that was a great end to a fantastic trip.

*The opinions expressed on this site are my own and do not necessarily represent those of Two10degrees or Active Web Solutions Ltd.