Add ABCL disassembler post.
[blog.git] / els-2015.post
1 ;;;;;
2 title: ELS 2015
3 tags: lisp
4 date: 2015-04-22 21:35:23+01:00
5 format: md
6 ;;;;;
7
8 Yesterday the 8th [European Lisp
9 Symposium](http://www.european-lisp-symposium.org/) finished.  In short it was
10 a great experience (I was there the first time, but hopefully not the last).
11 The variety and quality of talks was great, a good number of people attended
12 both the actual talks as well as both(!) dinners, so there were lots of
13 opportunities to exchange thoughts and quiz people, including on Lisp.  Also
14 except for one talk I believe all talks happened, which is also a very good
15 ratio.
16
17 For the talks I still have to go through the proceedings a bit for details, but
18 obviously the talk about the Lisp/C++ interoperability with Clasp was (at least
19 for me) long awaited and very well executed.  Both the background information
20 on the origins, as well as the technical description on the use of LLVM and
21 the integration of multiple other projects (ECL, SICL, Cleavir) were very
22 interesting and informative.
23
24 There were also quite a number of Racket talks, which was surprising to me, but
25 given the source of these projects it makes sense since the GUI is pretty good.
26 VIGRA, although it's a bit unfortunate name, looks pretty nice.  The fact that
27 the bindings to a number of languages are available and in the case of the
28 Lisps make the interaction a lot easier is good to see, so it might be a good
29 alternative to OpenCV.  It's also encouraging that students enjoy this approach
30 and are as it seems productive with the library. 
31
32 P2R, the Processing implementation in Racket is similarly interesting as there
33 is a huge community using Processing and making programming CAD applications
34 easier via a known environment is obviously nice and should give users more
35 opportunities in that area.
36
37 If I remember correctly the final Racket talk was about constraining
38 application behaviour, which was I guess more of a sketch how application
39 modularity and user-understandable permissions could be both implemented and
40 enforced.  I still wonder about the applicability in e.g. a Lisp or regular
41 *nix OS.
42
43 The more deeply technical talks regarding the garbage collector (be it in SBCL,
44 or Allegro CL) were both very interesting in that normally I (and I imagine
45 lots of people) don't have (a chance) to get down to that level and therefore
46 learning about some details about those things is appreciated.
47
48 Same goes for the first talk by Robert Strandh, *Processing List Elements in
49 Reverse Order*, which was really great to hear about in the sense that I
50 usually appreciate the `:from-end` parameter of all the sequence functions and
51 still didn't read the details of the interaction between actual order of
52 iteration vs. the final result of the function.  Then again, the question
53 persists if any programs are actually processing _really_ long lists _in
54 reverse_ in production.  Somehow the thought that even this case is optimised
55 would make me sleep easier, but then again, the tradeoff of maintainable code
56 vs. performance improvements remains (though I don't think that the presented
57 code was very unreadable).
58
59 *Escaping the Heap* was nice and it'll be great to see an open-sourced library
60 for shared memory and off-heap data structures, be it just for special cases
61 anyway.
62
63 Lots of content, so I doubt I'll get to the lightning talks.  It'll be just
64 this for now then.  Hopefully I have time/opportunity to go to the next ELS or
65 another Lisp conference; I can only recommend going.