Saved in:
Bibliographic Details
Main Authors: Neskovic, Sinisa, Stojimirovic, Dejan
Format: Preprint
Published: 2026
Subjects:
Online Access:https://arxiv.org/abs/2604.05001
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866915918970355712
author Neskovic, Sinisa
Stojimirovic, Dejan
author_facet Neskovic, Sinisa
Stojimirovic, Dejan
contents This paper proposes a functional foundation for model driven engineering that unifies model construction, metamodels, templates, and transformations under a single formalism: the model expression algebra. In this algebra, models are values, model expressions are terms, and evaluation is the interpretation homomorphism from terms to values. Model expressions are composed from four operators: model creation and element creation operators, reference operators for retrieving models and elements, and computation operators that embed functional computations. Metamodels are type schemas that constrain the algebra, and model templates, understood as parameterized model expressions, are formalized as open terms with free variables. Model transformations then arise naturally as model templates whose input parameter is a source model. We prove type preservation under evaluation and type safety of transformation execution. Since models are themselves model elements, the algebra also supports megamodels and weaving models without additional mechanisms. The approach is realized through an embedded domain-specific language (DSL) that demonstrates how a single mainstream language can serve simultaneously as the metamodeling, model construction, and transformation language, with formal guarantees enforced by the language's type system.
format Preprint
id arxiv_https___arxiv_org_abs_2604_05001
institution arXiv
publishDate 2026
record_format arxiv
spellingShingle Models as Values in a Model Expression Algebra: A Functional Approach to Model Driven Engineering
Neskovic, Sinisa
Stojimirovic, Dejan
Software Engineering
This paper proposes a functional foundation for model driven engineering that unifies model construction, metamodels, templates, and transformations under a single formalism: the model expression algebra. In this algebra, models are values, model expressions are terms, and evaluation is the interpretation homomorphism from terms to values. Model expressions are composed from four operators: model creation and element creation operators, reference operators for retrieving models and elements, and computation operators that embed functional computations. Metamodels are type schemas that constrain the algebra, and model templates, understood as parameterized model expressions, are formalized as open terms with free variables. Model transformations then arise naturally as model templates whose input parameter is a source model. We prove type preservation under evaluation and type safety of transformation execution. Since models are themselves model elements, the algebra also supports megamodels and weaving models without additional mechanisms. The approach is realized through an embedded domain-specific language (DSL) that demonstrates how a single mainstream language can serve simultaneously as the metamodeling, model construction, and transformation language, with formal guarantees enforced by the language's type system.
title Models as Values in a Model Expression Algebra: A Functional Approach to Model Driven Engineering
topic Software Engineering
url https://arxiv.org/abs/2604.05001