Content area
Geographic Information Systems (GIS) have become indispensable tools in addressing complex spatial challenges across diverse domains, including urban planning, environmental conservation, and climate change. However, the technical expertise required to use GIS effectively, particularly proficiency in general-purpose programming languages (GPLs), remains a significant barrier to broader adoption. Domain-Specific Languages (DSLs) have proven to lower this barrier by offering tailored abstractions that simplify problem-solving in specific domains. Despite their potential, the GIS domain lacks a formal DSL framework that bridges the gap between the design of spatial analysis models and their practical implementation. This research addresses this gap by proposing Gaia, a declarative Domain-Specific Language designed to express geographic data models. Gaia decouples the specification of spatial operations (the “what”) from execution strategies (the “how”). The Gaia transpiler automates execution optimizations such as transformations, parallelization, and state management, thereby reducing the complexity of spatial modeling. Gaia is scoped to tackle predefined spatial analysis problems, enabling users to focus on model specification rather than implementation intricacies. Herein I elaborate the development lifecycle of Gaia from domain analysis to design and implementation following a Design Science Research (DSR) approach, where Gaia succeeded and where it came short. The results show that users with domain knowledge yet little programming skills perform much better in spatial analysis tasks using Gaia than a GPL, adding empirical evidence to one of the DSL community’s strongest claims. Most importantly, despite the successes resulting from GIS’s embrace of database management systems in the late 1980s and 1990s, the performance of Gaia is a strong indicator that the GIS community should not sleep on the recent advances in analytical databases. Finally, I reflect on the qualitative feedback from Gaia users and discuss unexpected and exciting open problems.