Rel: A Programming Language for Relational Data
Abstract
From the moment of their inception, languages for relational data have been described as sublanguages embedded in a host programming language. Rel is a new relational language whose key design goal is to go beyond this paradigm with features that allow for programming in the large, making it possible to fully describe end to end application semantics. With the new approach we can model the semantics of entire enterprise applications relationally, which helps significantly reduce architecture complexity and avoid the well-known impedance mismatch problem. This paradigm shift is enabled by 50 years of database research, making it possible to revisit the sublanguage/host language paradigm, starting from the fundamental principles. We present the main features of Rel: 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.
Cite
@article{arxiv.2504.10323,
title = {Rel: A Programming Language for Relational Data},
author = {Molham Aref and Paolo Guagliardo and George Kastrinis and Leonid Libkin and Victor Marsault and Wim Martens and Mary McGrath and Filip Murlak and Nathaniel Nystrom and Liat Peterfreund and Allison Rogers and Cristina Sirangelo and Domagoj Vrgoc and David Zhao and Abdul Zreika},
journal= {arXiv preprint arXiv:2504.10323},
year = {2025}
}