European Lisp Symposium

- , London
The conference is over!


  • Escaping the Heap

    • Ahmon Dancy Ahmon Dancy Franz Inc. (SPEAKER)

    Common Lisp implementations provide great automatic memory management of data structures. These data structures are allocated from a memory area called the “heap”. However, there are times when heap allocation is inadequate to satisfy the needs of the application. For example, sometimes data structures need to be persistent or shareable amongst separate processes. In these cases, alternatives to using the heap must be considered. In this talk we will explore the motivations for out-of-heap data structures. We will discuss some of the out-of-heap data structures that we’ve created in the course of developing our database product, such as lists, hash tables, and arrays. We will describe the tools and mechanisms that we used to implement them, including memory-mapped files, foreign structs, aligned pointers and direct memory accesses. Finally we will discuss the downsides of out-of-heap data structures and the constant struggle between abstractions and performance.

  • Quicklisp: On Beyond Beta

    • Zach Beane Zach Beane Clozure Associates (SPEAKER)

    Quicklisp was released in 2010 as a public beta. Five years later, it's still in beta. How has Quicklisp (and Common Lisp) evolved in the past five years? What will it take for Quicklisp to go on beyond beta?

  • Unwanted memory retention

    • Martin Cracauer Martin Cracauer Google (SPEAKER)

    This talk goes over numerous oddities in a Lisp-based system which led to unwanted heap memory retention and to constant resident memory growth over the uptime of the system. Issues covered include a mostly conservative but also paged garbage collector, the difficulty of clearing out data structures that are retainted as an optimization but that might hold on to large amounts of heap (and how that happens in C++, too) and how large intercollected and theoretically uprooted "clouds of heap debris" interact with stale pointers out of same. The most delicious pieces center around pointer staleness out of the saved (on-disk, but read-write mapped) part of the heap, which is not garbage collected, into anonymous memory backed heap and how you can create rootless but uncollected and "untraceable" object circles. Untraceable until you hack up the GC to help you.

  • µKanren: Running the Little Things Backwards

    • Bodil Stokke Bodil Stokke (SPEAKER)

    Relational programming, or logic programming, is a programming paradigm that exhibits remarkable and powerful properties, to the extent that its implementation seems frightfully daunting to the layman. µKanren is a minimal relational language that seeks to strip the paradigm down to its core, leaving us with a succinct, elegant and above all simple set of primitives on top of which we can rebuild even the most powerful relational constructs. In this talk, we will explore the µKanren language by implementing it from first principles in a simple functional programming language, going on to demonstrate how you can assemble these simple building blocks into a semblance of its richer parent, miniKanren, and maybe solve a logic puzzle or two to make sure it’s working as advertised.


photo Goldsmiths, University of London (CONFERENCE)
New Cross
London SE14 6NW United Kingdom


  • Premier Inn (HOTEL)
    43-81 Greenwich High Road
    London SE10 8JL
  • Travelodge (HOTEL)
    Blackheath Road, Greenwich
    London SE10 8EF
  • Mercure (HOTEL)
    Catherine Grove, Greenwich
    London SE10 8FR
  • Novotel (HOTEL)
    173-185 Greenwich High Road
    London SE10 8JA
  • Ibis (HOTEL)
    30 Stockwell Street, Greenwich
    London SE10 9JN


Programme Chair

  • Julian Padget Julian Padget University of Bath (PROGRAMME-CHAIR) UK

Local Chair

  • Christophe Rhodes Christophe Rhodes Goldsmiths University of London (LOCAL-CHAIR) UK


  • Christian Queinnec Christian Queinnec University Pierre et Marie Curie (COMMITTEE) Paris 6 France
  • Edmund Weitz Edmund Weitz University of Applied Sciences (COMMITTEE) Hamburg Germany
  • Giuseppe Attardi Giuseppe Attardi University of Pisa (COMMITTEE) Italy
  • Henry Liebermann Henry Liebermann MIT (COMMITTEE) USA
  • Marc Freely Marc Freely University of Montreal (COMMITTEE) Canada
  • Matthew Flatt Matthew Flatt University of Utah (COMMITTEE) USA
  • Nick Levine Nick Levine RavenPack (COMMITTEE) Spain
  • Rainer Joswig Rainer Joswig (COMMITTEE) Hamburg Germany
  • Robert Strandh Robert Strandh University of Bordeaux (COMMITTEE SPEAKER) France
  • Sacha Chua Sacha Chua (COMMITTEE) Toronto Canada
  • Stephen Eglen Stephen Eglen University of Cambridge (COMMITTEE) UK


Times are local to the conference. You can download the programme in iCalendar format here.
  1. April 20th

  2. Registration

  3. Welcome Message

  4. Quicklisp: On Beyond Beta

    • Zach Beane
  5. Coffee

  6. Efficient Applicative Programming Environments for Computer Vision Applications

    • Benjamin Seppke
    • Leonie Dreschler-Fischer
  7. Keyboard? How quaint. Visual Dataflow Implemented in Lisp

    • Donald Fisk
  8. P2R - Implementation of Processing in Racket

    • Hugo Correia
    • António Leitão
  9. Lunch

  10. Constraining application behaviour by generating languages

    • Paul van der Walt
  11. Processing List Elements in Reverse Order

    • Irène Durand
    • Robert Strandh
  12. Executable Pseudocode for Graph Algorithms

    • Breanndán Ó Nualláin
  13. Coffee

  14. Unwanted memory retention

    • Martin Cracauer
  15. Lightning Talks

  16. Conference Dinner

  17. April 21st

  18. A Gentle Introduction to Gendl, a Common Lisp-based Knowledge Based Engineering Environment

    • Dave Cooper
  19. Coffee

  20. lambdatalk

    • Alain Marty
  21. Symbolic Pattern Matching in Clojure

    • Simon Lynch
  22. Escaping the Heap

    • Ahmon Dancy
  23. Lunch

  24. µKanren: Running the Little Things Backwards

    • Bodil Stokke
  25. Coffee

  26. Woo: a fast HTTP server for Common Lisp

    • Eitaro Fukamachi
  27. Clasp: Common Lisp+LLVM+C++

    • Christian Schafmeister
  28. Quantum Physics Simulations in Common Lisp

    • Miroslav Urbanek
  29. First-class Global Environments in Common Lisp

    • Robert Strandh
  30. Lightning Talks

  31. Conference End


You can find the proceedings in PDF form here:


Please wait...