Today’s most exciting presentation was by Gerald Jay Sussman. He talked about ‘Evolvability and Robust Design‘ and complained that software paradigms generally degenerated into software religions where programmers locked themselves into one of the styles such as logic programming, constraint programming, neural network programming, etc. According to him every paradigm had very strong and weak points and one technique would generally not be enough for building flexible evolvable systems. His concept of having some specialized algorithms connected to input generalizers and output standardizers seems to be worth lots of research. Sussman gave concrete examples from electrical engineering where you could change some input filters but keep the overall circuitry unchanged was fine implementing this in software and making it much more robust and evolvable still seemed confusing. He said machine learning techniques and probabilistic methods would be very useful in the input generalization part and then the results of those parts would be fed into very rigid, specialized and fast algorithms (and that input generalization part didn’t have to be as fast as the specialized part). He also gave examples from biology showing how humans shared a very similar body plans with other animals and how evolution worked to use the same structures for different tasks not by discarding them but by adding something on top of them.
In addition to pre-arranged technical presentations, Tuesday was also the day for wonderful lighning talks in which speakers were given a very limited amount of time (5 – 10 minutes) to present their ideas or projects that they thought to be important to the Lisp community. And so were the talks:
Bil Lewis talked about his Omniscient Debugging tool.
Daniel Herring talked about Lisp distributions if it would be possible to work in a model similar to GNU/Linux distributions.
Alex Plotnick talked about literate programming in Common Lisp.
Pascal Costanza, the CLOS and MOP master talked about first-class dynamic environments in ContextL. He gave an example of on the fly updating and patching of a Lisp web application by using layers of his ContextL. I realized that in addition to LispWorks he also had Clozure CL in his Apple laptop.
François-René Rideau gave a fast presentation titled ‘Better Stories, Better Languages‘
Hannes Mehnert provided a very nice visualization of compiler optimizations in his talk ‘Watching compiler optimizations’.
Andy Wingo‘s lightning talk was titled ‘Guile’s Language Tower’
Peter Mager had ‘Some Thoughts on What Programmes and Language Designers can Learn From Biology’ which reminded me some parts of the Sussman’s talk.
Ross Lonstein talked about his work in progress, ‘Embedding Scheme in IBM WebSphere MQ’.
Taichi Yuasa talked about ‘Extending Scheme in Java for SICP exercises’.
Gyedi Sam told about his experiences where he developed a Lisp interpreter written in Perl so that he could implement some useful on top of that (and the reactions of the managers when they were show what was going on behind the scenes.)
Didier Verna, in addition to his technical papers also reserved for a lightning talk: ‘Lisp, Jazz, Aikido – Three tales of the same story’.