KIT | KIT-Bibliothek | Impressum | Datenschutz

Mono Types - First-Class Containers for Datalog

Xu, Runqing ORCID iD icon; Klopp, David; Erdweg, Sebastian ORCID iD icon 1; Aldrich, Jonathan [Hrsg.]; Silva, Alexandra [Hrsg.]
1 Institut für Programmstrukturen und Datenorganisation (IPD), Karlsruher Institut für Technologie (KIT)

Abstract:

We propose mono types, a new abstraction for programming Datalog. Mono types behave like first-class containers that can be stored in relations and to which elements can be added decentrally. But, mono types are more than just containers: They provide a read operation that can yield any result as long as it monotonically grows with each added element and is independent of the order in which elements are added to the container. This design permits a wide range of mono types (e.g., sets, maps, and aggregations), yet guarantees mono types can be integrated into Datalog without jeopardizing Datalog’s least fixed-point semantics. We develop a theory for mono types, which includes constructions for complex mono types, equivalence relation for mono types, and properties about semantics-preserving mono-type transformations. This theory ensures sound Datalog integration and justifies crucial compiler optimizations for mono types. Together, these techniques demonstrate that mono types provide abstraction without regret: We demonstrate in two case studies that programs become easier to write with mono types, while their performance also improves drastically.


Verlagsausgabe (Version 2) §
DOI: 10.5445/IR/1000187537/v2
Veröffentlicht am 01.12.2025
Verlagsausgabe (Version 1) §
DOI: 10.5445/IR/1000187537
Veröffentlicht am 25.11.2025
Originalveröffentlichung
DOI: 10.4230/LIPIcs.ECOOP.2025.33
Cover der Publikation
Zugehörige Institution(en) am KIT Institut für Programmstrukturen und Datenorganisation (IPD)
Publikationstyp Proceedingsbeitrag
Publikationsjahr 2025
Sprache Englisch
Identifikator ISBN: 978-8-33-132289-3
KITopen-ID: 1000187537
Erschienen in 39th European Conference on Object-Oriented Programming (ECOOP 2025), 30th June - 2nd July 2025, Bergen, Norway.
Veranstaltung 39th European Conference on Object Oriented Programming (ECOOP 2025), Bergen, Norwegen, 30.06.2025 – 02.07.2025
Verlag Schloss Dagstuhl - Leibniz-Zentrum für Informatik (LZI)
Seiten 33:1–33:26
Vorab online veröffentlicht am 25.06.2025
Schlagwörter Datalog, compiler optimization, Theory of computation → Constraint and logic programming
Nachgewiesen in OpenAlex
Scopus
KIT – Die Universität in der Helmholtz-Gemeinschaft
KITopen Landing Page