After Action Report: PADL 2006
Practical Aspects of Declarative Languages
Introduction
This is an highly-opinionated report on the presentations at the PADL 2006. The sessions are presented chronologically, but are tabled in the contents by topic, and cross-referenced by their practicality (i.e. in what I found useful in the presentation).
Presentations
| Cross References | |
|---|---|
| Topic | Practicality |
| Invited Speakers | Practical Results |
| Phil Walder | Dominators |
| Erik Meijer | Probabilistic Prolog |
| No show: David Roundy | Distribution type |
| Theorem Provers (no, really!) | |
| "Practical" "Applications"1 | Declarative debugging |
| CHRs for testing | Improving the search from failed branches |
| Probabilistic music | Cliques as power sets |
| Genomes with distribution type | Complexity measures |
| Constraints | "Theoretical" 2 (including compiler |
| Optimal paths with dominators | implementations and optimizations)3 |
| Constraints in Mercury | Tabling and tabling 4 |
| Informing constraints with failure | Constraints 5 |
| Model checking | |
| Analysis and Verification | Reimplementing cut |
| Typing Prolog with cliques | Description logics 6 |
| Model Checking model checkers | |
| Logic Programming | |
| Generic (foreign) Cuts | |
| Tabling in Mercury | |
| Correct Tabling in XSB | |
| Declarative debugging | |
| Browsing and Querying | |
| Logical Eclipse plugin | |
| description logic queries | |
| Queries with sets with regex | |
Retrospective
As you can see below, my critisms are very harsh. This begs two questions: harsh against whom? and would I go again to a PADL? The answer to the latter is resoundingly in the affirmative (as William Byrd would pipe up: 't'): the density of useful concepts I took away from this conference was much greater than most other conferences I've attended, including, not surprisingly, the POPL.
So, why so harsh in my reviews? Was I critizing the speakers? In some cases, I was indeed critizing the speakers, particularly when they sacrifice rigor for herd thinking (particularly when they do not acknowledge such lapses), but in the main, my criticisms, such as 'this topic does not interest me', was not a criticism of the speaker, nor even the choice of topic (with the caveat that of the 17 of the 33 papers accepted, the papers accepted should be more practical and less esoteric, if the reviewers chose academic curiosities over less polished papers on the topic of applications then I do fault the selection process), but a severe criticism of me. What I mean here is that the PADL's mission is to gather reports from the front-lines, as it were. That's where companies, like mine, operate. So, companies, like mine, including mine, should be submitting these papers. We do not, and the PADL has suffered for it.
In short, the PADL was what it set out to be -- a free exchange of ideas of the application of research and an open channel between researchers and industry. AND the PADL, as good as it was, could be even better with more practical, real, applications developed in the declarative style showcased for all to see. It motivates the researchers ('my work has revelance! an audience! a fan club!'), and it improves the tools industry uses to deliver these applications ('you can do that?'). Win/win. QED.
The Challenge
So you companies that use declarative programming ... you know who you are (*cough* galois *cough* ... um, Doug, what about you? Yeah, me, too), belly up to the bar, 'cause drinks are on the house! (trans: submit papers; you are not divulging company secrets, and you're gonna get lots of neato ideas that will help you on your current projects).
Day 1: Monday, January 9, 2006
| 9:00 am | Links: Linking Theory to Practice for the Web |
| Phil Walder | |
| |
| 10:30 am | Using CHRs to generate functional test cases for the Java Card Virtual Machine |
| Sandrine-Dominique Gourand (presenter), Arnaud Gotlieb | |
| |
| 11:00 am | Probabilistic-logical Modeling of Music |
| Jon Sneyers, et al. | |
| |
| 11:30 am | Modeling Genome Evolution with a DSEL for Probabilistic Programming |
| Martin Erwig and Steve Kollmansberger (presenter) | |
| |
| 2:00 pm | Using Dominators for Solving Constrained Path Problems |
| Luis Quesada, et al. | |
| |
| 2:30 pm | Adding constraint solving to Mercury |
| Ralph Becket, et al. presented by Zoltan Somogyi (co-author) | |
| |
| 3:00 pm | A Hybrid BDD and SAT Finite Domain Constraint Solver |
| Peter Hawkins (presenter) and Peter Stuckey | |
| |
| 4:00 pm | Efficient top-down set-sharing analysis using cliques |
| Jorge Navas, Francisco Bueno and Manuel Hermenegildo (presenter) | |
| |
| 4:30 pm | Automatic Verification of a Model Checker by Reflection |
| Bow-Yaw Wang | |
|
Day 2: Tuesday, January 10, 2006
| 9:10 am8 | Generic Cut Actions for External Prolog Predicates |
| Tiago Soares, Ricardo Rocha and Michel Ferreira (presenter) | |
| |
| 9:40 am | Tabling in Mercury: Design and Implementation |
| Zoltan Somogyi (presenter) and Konstantinos Sagonas | |
| |
| 10:10 am | Incremental Evaluation of Tabled Prolog: Beyond Pure Logic Programs |
| Diptikalyan Saha and C. R. Ramakrishnan | |
| |
| 10:40 am | Controlling search space materialization in a practical declarative debugger |
| Ian MacLarty and Zoltan Somogyi (presenter) | |
| |
| 2:00 pm | LINQ: Reconciling objects, relations and XML in the .NET framework: a Personal Perspective |
| Erik Meijer | |
| |
| 3:30 pm | A Generic Code Browser with a Declarative Configuration Language |
| Kris De Volder | |
| |
| 4:00 pm | Translating Description Logic Queries to Prolog |
| Zsolt Nagy, Gergely Lukácsy (presenter) and Péter Szeredi | |
| |
| 4:30 pm | Querying Complex Graphs |
| Yanhong A. Liu (presenter) and Scott D. Stoller | |
|
Endnotes
| 1 | As all of the talks in the "Practical" "Applications" were neither practical (they were all used to further research or as dissertations) nor applications (several speakers thoughout the conference, when I queried them about aspects of their presentation stated that the works they discussed where under development still), I query the accuracy of the topic heading for these talks. A saving grace is that all of the talks on this topic did have results that were practical and immediately usable for real-world applications, unlike what some of the other presentations had to offer. |
| 2 | |
| 3 | |
| 4 | Yes, there were two presentations on tabling. Both of them I found to be very "useful" in a "theoretical" sense of the word. |
| 5 | Okay, okay, so I am looking into constraints. This does point out an issue with the symposium: it may point out things that I don't know I don't know, but it wasn't very helpful in educating me about the practical applications in these areas. |
| 6 | I think a more approapriate term for 'description logics' or 'ontologies' is 'hooey'. Bluntly, descriptions logics are as innovative and as useful as Java is ('the most distressing thing to hit computing since MS-DOS' Alan Kay). With the set of claims proponents are making grandiosely about knowledge representation, which I must remind everyone is a similar set of claims the AI community was making for symbolic representation of knowledge (what, again, is description logic? Oh, the 'symbolic representation of knowledge'? Ah, yes, we have a winner here!), in the same self-satisfied tone, just before AI went dark for twenty years, AND with the bedfellows it has (whispered: 'eggs'-'em'-'ill'), I am shocked that more gullible consumers of this hogwash haven't made the obvious connections and avoided this dead end... |
| 7 | The 'random' in "'random' testing" means 'comprehensive with random generation of parameters', not 'a random selection [e.g. not comprehensive] of possible tests'. |
| 8 | This is a departure from the published schedule; the invited speaker for the morning was a no-show. |
(originally published January 16, 2006)