« Optimism is paying off (and other stories) | Main | ScalaDBC: first results »

April 28, 2005

Meeting the LABOS

Martin, Iulian an me met a delegation of the LABOS (Steven Dropsho and Willy Zwaenepoel) to discuss whether they share our interest in finding better ways to access databases by modifying a (modern / OO / functional) programming language.

For them, a database interface library or language is interesting if one of the following behaviours are better than what currently exists. But in all cases, a decrease in performance is a show-stopper.

  • Complexity of code is demonstrably reduced. But cleaner code with the same complexity is a no-show. Of course, in that case, they are not really interested in the problem itself but rather the result.
  • Performance (in an arbitrary definition) somehow increases. For large systems, and in particular distributed systems, performance becomes an overwhelming problem and offering something that solves or mitigates this would be very useful.
  • And a particular instance of performance that interest them particularly: make middle-ware programs simpler. That means that some of the processing done currently in the middle-ware program at run-time might be done at compile time by looking at the queries. An example of such processing is to find the intersection between queries (used for efficient locking of data). Tackling this problem as such is very specialised and not really in my field though.
In short, the part that interests them directly (pre-processing of queries for middle-ware) does not really intersect with what interests me. However, if we develop a system that can be used to do library-specific optimisations at compile-time, they might have some very interesting use cases to provide: a database library that optimise for a specific middle-ware system. Such a library has the potential to become very important in large distributed application programming.