I arrived in Madrid on Saturday afternoon, looking forward to three days of Lisp-related activity: the European Common Lisp Meeting on Sunday, then the European Lisp Symposium on Monday and Tuesday. Having been in Madrid only once before, and that on a brief business trip, I took advantage of the time before the Saturday dinner to have an extended wander through the streets of the central area (broadly East of the Palacio Real). My first and overriding impression: it’s incredibly clean and well-kept. This might have been partly due to seeing the sun for what felt like the first time this year, but the colours of the buildings were very vibrant, and everything seemed in very good condition – it put me a bit in mind of a spruced-up Cuba. Eventually, though, I had to stop wandering around aimlessly; the pre-ECLM dinner is an excellent occasion to chat to old friends and to catch up on news.
One thing that a partly social occasion like the ECLM offers to the hobbyist Lisp developer, I think, is an opportunity to become more motivated: for example, by hearing that other people value your work, or use your software, or whatever. The communications infrastructure that we now have is excellent, particularly for technical communication, but the general silence-implies-consent method of communicating (on mailing lists, for example) does collide unfortunately with the silence-implies-indifference default in many contexts. So for me, hearing that people consider SBCL on Windows to be “good enough” to remove the obnoxious unremovable startup message is useful feedback. This cuts both ways; I shouldn’t need to travel all the way to Madrid to be apologetic to Nick Levine in person for failing to act on any of his patches, but since we were both there...
Sunday was ECLM day. The ECLM offers Common Lisp practitioners invited by Edi and Arthur a chance to speak for 45 minutes or so on a subject of their choosing; approaches differ. Sometimes the speakers come from the corporate world, which generally leads to a (fairly interesting) talk about the problem domain that they’re solving: Michael Compton’s talk about Accenture Digital Optimization, a tool for A/B optimization on steroids, and Michael Eisfeld’s presentation of the background behind his company’s ConED software to act as a structural engineer’s assistant both fell into this category: I suppose it’s nice to know that these are problems that are being solved with Lisp, and it’s always good to hear about interesting problem, but it would have been nice to hear a more explicit link or some juicy details.
There were three talks generally adressing the CL ecosystem: the first talk of the morning was Wes Henderson’s introduction and presentation of mocl, a CL for mobile platforms. Between his announcement of the scheduled release time at 3581000000, Erik Huelsmann’s announcement that ABCL’s 1.2.0 release candidate was now available, and my inevitable “live” release of SBCL-1.1.8 in a lightning talk slot, there was a lot of implementation release activity. Matthew Emerson’s talk about Clozure CL didn’t involve any release engineering; instead, he talked about (and demoed) the Objective C bridge offered in Clozure CL: no reader macro was left unused by the end.
The remaining two talks were on music-related Lisp software: Janusz Podrazik gave an overview and demonstration of OpusModus, a tool around notation and other symbolic representations of music (such as MIDI) intended to add to a composer’s armamentarium; later in the day, Sven Emtell talked about ScoreCleaner and other applications from DoReMIR, with the assistance of some slick marketing videos. There is a long association between Lisp and computer music research (well, to be fair, there’s a long association between any old high-level programming language and computer music research); it was nice that both these applications looked slick, though I question Sven’s blithe assurance that incorporating polyphonic transcription into ScoreCleaner Notes (#1 in the App Store Japan, don’t you know?) would be happening in the near-term future.
After all this, a break to wander around Madrid and find a beer with old friends, before the ECLM dinner proper; I sat on a table with (among others) Jason Cornez, who flew to my rescue in the days of the 2010 ELS and Eyjafjallajökull: I noticed wryly that his answers in a social situation to the question of how his business was going were remarkably similar to those that I use. I suppose ’twas ever thus.
The ELS days covered a broader range of Lispy things. There were some non-CL Lispers in the room, and some of them even got to talk: Sam Tobin-Hochstadt’s tutorial on Typed Racket was pretty impressive – demos with audience suggestions are always risky, but it all came off – and Ludovic Courtès made NixOS and Guix look neat (the snarky back-channel question of whether it was possible to define a package called “list” under Guix was sadly unaddressed). More Lisp/music crossovers: Gérard Assayag gave a keynote presentation about OpenMusic’s past, present and future, including some neat improvisations (though there’s still a human in the loop: “it doesn’t know when to stop”) using a combination of OpenMusic and Max; and Mika Kuuskankare talked about PWGL under cover of talking about a lightweight lisp-friendly markup language (I'm not sure that the markup language is interesting enough to warrant using it over, say, org-mode – the nice thing about Mika’s implementation was that it rendered on the fly, but that ought to be achievable no matter the surface syntax – but the PWGL demos were very impressive).
And then it was time to head home. One of my odder habits in far-flung places is to see how pedestrian-accessible the airport is, so instead of taking the Metro to the airport terminal, I got off at Barajas, and had a look round the commune there (not least because the impression we in the UK have of Spain is of permanent protest and indignados everywhere, and I wanted to get a sense of what the atmosphere was like when not in the equivalent of Regent Street). I didn’t really stay for long enough to have publishable opinions about the political and economic state, though I’m glad to have seen it; I did observe that not all of the roads marked on the paper map I had were in fact accessible to pedestrians or, indeed, cars, so my walk from there to the airport was somewhat longer than expected (but fortunately not longer than budgeted for); if I had spent some time looking at a map beforehand I would have noticed that it was probably more sensible to go to Alamedo de Osuna at the end of line 5 instead. Then home by 1:30am, in time to catch 240 winks before the early-morning natural alarm clock. A good time was had by me.