Leonid Libkin is a professor of computer science at the University of
Edinburgh and VP Research (query languages) at RelationalAI; he is also
holding part-time industrial chair position at Université Paris-Cité.
He was previously scientific advisor to Neo4j, professor at the
University of Toronto, at École Normale Supérieure, and member of
research staff at Bell Laboratories in Murray Hill. He received his
PhD from the University of Pennsylvania in 1994. His main research
interests are in the areas of data management and logic in computer
science. He has written five books and over 250 technical papers. His
awards include a Marie Curie Chair Award, a Royal Society Wolfson
Research Merit Award, and eight Best Paper Awards. He has chaired
program committees of major database and logic conferences (PODS,
LICS, ICDT), and served as chair of the 2010 Federated Logic
Conference and general chair of PODS. He is an ACM fellow, a fellow of
the Royal Society of Edinburgh, and a member of Academia Europaea.
AG 1, AG 2, AG 3, INET, AG 4, AG 5, D6, SWS, RG1, MMCI
For 50 years, programming with data has been based on embedding a query
sublanguage like SQL into a host programming language. The separation of a
general purpose programming language and a query sublanguage led to many
problems collectively referred to as impedance mismatch; in essence, two
languages co-exist under the same roof, but their communication and
cooperation is severely limited. Can we do better?
Rel is a new relational language developed by RelationalAI, whose key
design goal is to break the embedded data sublanguage paradigm. And while
breaking 50 years of suboptimality, why not return to the clean and
original relational model, without undesirable SQL baggage such as the
much maligned nulls and bag semantics? We can achieve this due to decades
of database research, making it possible to revisit the foundations. We
present the vision behind Rel and its main features: those that give it
the power to express traditional query language operations, and those that
are designed to grow the language and allow programming in the large