Where to go now?
I spoke with Philip Wadler about where to go next. Here are the ideas (but considering that only two month are remaining, a selection will have to be made):
- Can 'GROUP BY' be used to optimise queries such as '[bag {auth.#name, [bag pub.#title | ^pub <bag (table "publication" from db), pub.#author_id == auth.#author_id]} | ^auth <bag (table "author" from db)];' (finding all publication for every author) and how?
- Could a 'sortby' operator on lists be optimised into SQL with the 'SORT BY' argument of SQL and how?
- What would be needed to support XQuery as database engine and how could this be optimised?
- If SLinks allows users to write SQL or XQuery queries themselves in a special operator, would it be possible to transform them into SLinks expressions (with the list comprehensions etc.). And then, would the version of this query optimised by the Links optimiser be more efficient than without this transformation into SLinks and back?
Otherwise, I have worked on improving/fixing some problems with the current three SQL optimisations.