Operational Semantics Development for Procedural Programming Languages Based on Conceptual Transition Systems (original) (raw)
2015
The methodology of the operational semantics development for programming languages based on the operational ontological approach, conceptual transition systems and CTSL, the language for the specification of such systems, is proposed. The development of operational semantics is illustrated by an example of procedural programming languages from the family MPL of model programming languages. Each target language covers a certain type of the procedural language constructs. Thus, the paper can be also considered as a cookbook on the development of operational semantics of procedural programming languages.
Related papers
Understanding programming language concepts via operational semantics
2007
The origins of “formal methods” lie partly in language description (although applications of methods like VDM, RAISE or B to areas other than programming languages are probably more widely known). This paper revisits the language description task but uses operational (rather than denotational) semantics to illustrate that the crucial idea is thinking about an abstract model of something that one is trying to understand or design.
Black tie optional: Modelling programming language concepts
2004
Abstract. This paper describes an undergraduate course taught at the University of Newcastle upon Tyne; the title of the module is Understanding Programming Languages. The main thrust of the course is to understand how to model features of language semantics. Specifically,(structural) operational semantics (SOS) is taught as a convenient and notational light way of recording and experimenting with features of procedural programming languages.
Semantics of programming languages: A tool-oriented approach
2000
Programming language semantics has lost touch with large groups of potential users [39]. Among the reasons for this unfortunate state of affairs, one stands out. Semantic results are rarely incorporated in practical systems that would help language designers to implement and test a language under development, or assist programmers in answering their questions about the meaning of some language feature not properly documented in the language's reference manual.
Loading Preview
Sorry, preview is currently unavailable. You can download the paper by clicking the button above.