Rainer Joswig
Hamburg, Germany
Email: joswig@lisp.de

Home > Lisp News > 15. September 2009

Report from the European Common Lisp Meeting, Hamburg, 13. September 2009

European Common Lisp Meeting 2009 (ECLM), Hamburg, Germany, 13. September 2009

organized by Arthur Lemmens and Edi Weitz

This time I managed to attend the ECLM. Usually the ECLM takes place in april and conflicts with a well-known sport event in Hamburg, where I often try to reach the finish line - which is not that easy. This year the ECLM 2009 is in september and takes place here in Hamburg (where I live). Edi and Arthur also chose a very scenic place for the event: the Hotel Hafen Hamburg. The Hotel Hafen Hamburg has a beautiful view over the Landungsbrücken, the docks, the river Elbe and parts of the Hamburger Hafen, which is among the ten largest ports of the world. Luckily two cruise liners were in the docks and one of them was the MS Europa. The hotel is also in walking distance from the Reeperbahn.

77 persons registered for the ECLM 2009, which is a bit less than last year. The current economic climate might be a reason for that. Still this is a very respectable number and some of the leading Lisp experts were among them. Twenty countries were represented, which made the meeting very international - just right for the place where ships depart to all continents of the world.

I have a foto gallery online, so you can get a visual impression of the meeting.

The picture below shows a view from the hotel: the new Hafencity on the left, the new Elbphilharmonie (under construction), the Cap San Diego museum ship, the Rickmer Rickmers sailing ship, the Landungsbrücken train station is in the front. The River is the Elbe.

Another view from the Hotel Hafen Hamburg: The MS Europa in the dock.

Talks

Dan Weinreb from ITA Software about their use of Common Lisp, especially for the new reservation system

I feared a bit that the talk would be very similar to his recent talk at Google Tech Talk (Lisp for High-Performance Transaction Processing.), but it wasn't the case. This time Dan talked a lot more in detail about how they used Lisp and what they had to improve. Many of the problems they had to solve come up when you write an 'enterprise application' using three tier architectures (presentation, business logic, database) which has to be deployed in a demanding setting (large amount of requests, always up, fast response times, 24h monitoring, upgrading without downtime). Dan explained their choice for Clozure CL and the various improvements they needed from the Clozure CL. SBCL (in use with the QPX application) is still used to build and test the software - since the compiler gives more warnings and does more checking. Clozure CL's compiler is much faster, though. They also have done extensive performance tests with both SBCL and CCL and Dan notes that there is not an easy answer which Lisp runs the application faster. For me it was very interesting to hear where Clozure CL has been improved and what kind of new features it now offers (like code coverage testing, support for Unix signals, various speed improvements, timeout parameters for I/O operations, ...). Dan also described how there choice of using threads was motivated. Still each Lisp does only run a single thread for handling requests. The team uses SVN, tries to avoid branches, before check-in of code there is a code review needed. They also use buildbots extensively. For the FFI to crypto routines in C CFFI is used. Scott McKay developed a new ORM as their interface to the Oracle database, since they had lots of requirements that existing interfaces could not handle. For API functions in Lisp they use a macro DEFINE-STRICT-FUNCTION, which does runtime checks on the argument types, checks the return values and checks the allowed conditions. Dan also wrote the coding guidelines. They are not happy with incremental build support (they are using ASDF) and also not with the support for software modularity in Common Lisp.

From the talk one gets the feeling that they created a lot of the usual software environments that is seen in the Java enterprise world, but this time for Lisp. Here Clozure CL is the 'application server' and it has the necessary extensions and libraries to act as such. The reservation system project has about one hundred engineers and almost fifty engineers are programming in Lisp.

Paul Tarvydas (Visual Frameworks Inc) described a graphical approach to software development: Reactive programming with state machines. He also showed an applition (Jet Letter PSL) for creating various types of mailings. Again with a heavily visual user interface. The applications were developed with LispWorks.

Dimitri Simos (Lissys Ltd) is an engineer in the aircraft industry and he has been developing software for analyzing aircraft designs: PIANO. The software is very specialized for a relatively small market and also quite expensive. For a long time he was using Macintosh Common Lisp for the development. In 2008 (since MCL was not running on the new Macs at that time) he decided to have the application ported to Windows. So the new version runs in LispWorks also on Windows. He was suprised that the port was not that difficult and did not take the two years that he had expected. In fact it were only a few months. Dimitri also advocated for the use of Lisp by engineers. He is not a professional programmer but learned to use Lisp for his domain without problems. The simple and effective development environment of MCL was helping him a lot. For him 'simplicity and stability' trumps features.

Michael Wessel (Racer Systems GmbH & Co. KG Hamburg, Germany) showed a bit of their new version of RacerPro, a description logics reasoner which has the necessarily facilities to be used in Semantic Web applications. RacerPro usually runs on top of Allegro CL, but Micheal Wessel also showed a user interface written using LispWorks for inspecting and controlling various aspects of the reasoner. The reasoner now has an integration with AllegroGraph from Franz Inc. and the reasoning can now be extended in a simple Lisp dialect (MiniLisp). Michael showed various examples how to use the reasoner, including a Sudoku solver.

David McClain (SpectroDynamics, LLC) presented another visual programming approach. His application looked powerful and sophisticated. He developed a whole framework for scientific computing including data storage and distributed computing - in 100 thousand lines of Lisp, again using LispWorks. He has many years of experience and wrote large amounts of C code in his career (several million lines of code), but he strongly prefers to use Lisp.

Kuroda Hisao presented works from a team at MSI in Japan. They have twelve Lisp hackers and are working in the domain of 'machine learning'. Typical applications they developed are: Fault diagnosis for automobiles and author identification application for research papers. He also presented a Lisp suite of tools for ping, traceroute and snmp - these tools allow the monitoring of a large number of network devices. He pointed out that Lisp compilers still miss many interesting optimizations and mentioned a paper that does some comparisons. He promised to translate the paper from Japanese to English, and to make it available to compiler writers.

Martin Simmons (LispWorks Ltd) talked about implementing symmetric multiprocessing (SMP) for LispWorks. This will be released with LispWorks 6, which now is in beta. It looks like they have put a lot of thought into adding SMP to Common Lisp, to get the semantics right and to keep applications safe. The performance of single threaded code will be comparable to what is provided with LispWorks 5. Still the new version will not scale to large amounts of cores, since the garbage collector is not running parallel or concurrent. I also got the impression that they are now moving from Motif to GTK+ for their Linux based port of their development environment. Hamburg is not far away from the UK (also in mindset), so it was not surprising that the LispWorks team was well represented at the ECLM.

Lightning Talks

This is one of my favorite part of Lisp Meetings. Demo or die. Either it works or not. Get the message across in just five minutes. So it was no surprise that this part also was fun at the ECLM in Hamburg.

A few things I can remember: Adlai Chandrasekhar presented Sheeple ( Object-Oriented Secret Alien Technology ), Luke Gorrie advocated for Forth on the OLPC,

Jeremy Jones (Clozure) showed Clozure Common Lisp running on Windows with the IDE ported (using Cocotron as a Cocoa compatible library on Windows and Clozure CL's Objective C bridge),

Nick Levine talk about the new book he is writing (Lisp Outside the Box) and the choice of the cover animal (an Emu),

Stefan Richter talked about adding AI-based reasoning capabilities to the project planning tools at freiheit.com (I should also mention that Stefan provided financial support for the ECLM, thanks!),

Tobias-Christian Rittweiler presented some new capabilities of SLIME (the Emacs to Common Lisp interface),

Dr. Dieter Hoffmann talked about Preforma (for use in evolutionary programming, software documentation and reengineering)

and finally James Anderson was looking for some Lisp hackers for a project.

I also managed to get two books signed: Dan Weinreb signed my copy of the Lisp Machine Manual and Kathleen Callaway signed my copy of Lisp in Small Pieces. Kathleen has translated the book from French to English. She is married to Robert Strandh, professor and McCLIM enthusiast. Also notable: Pierre De Pascale showed me a Scheme implementation (including VM and editor) he wrote. I also had the chance to talk to Jeremy Jones, one of the founders of Coral (1984) and co-author of Coral Common Lisp for the Mac, which now 25 years later runs an airline reservation system as Clozure Common Lisp.

It was a very nice day - many thanks the organizers (Arthur and Edi) and all the speakers!

Links:
ECLM 2009
ECLM 2009 foto gallery by Rainer Joswig

Keywords:
CLOZURE-CL EVENTS LISPWORKS

Feedback for this Lisp news item.
Please add to the Number 129 the Number 1 and put the result in the Number input field below.
Name:
Email:

Feedback:



Terms of use: no crawlers, no wget, no site copying, use of pictures and text only with permission. No excessive rss feed checking.

Website by Rainer Joswig, Copyright 2003-2009, feedback to joswig@lisp.de