A framework for programming denotational semantics in C++
(EN)
Papaspyrou, NS
(EN)
In this paper, we describe how the denotational semantics of programming languages can be implemented in C++, by exploiting the object-oriented programming paradigm. Such implementations are execution models, extremely useful for the study of programming languages. Although C++ is not a natural choice for this problem domain, compared to functional programming languages such as ML, we suggest a type-safe framework, implemented in pure C++, that integrates functional characteristics such as high-order functions and is capable of naturally expressing denotational descriptions. Finally, by comparing our approach to possible implementations using functional languages, we investigate extensions to C++ that would be valuable in this problem domain.
(EN)