Cognitive dimensions of notations
Proceedings of the fifth conference of the British Computer Society, Human-Computer Interaction Specialist Group on People and computers V
The formal semantics of programming languages: an introduction
The formal semantics of programming languages: an introduction
An Invitation to Formal Methods
Computer
Theory and Practice of Action Semantics
MFCS '96 Proceedings of the 21st International Symposium on Mathematical Foundations of Computer Science
The Varieties of Programming Language Semantics
PSI '02 Revised Papers from the 4th International Andrei Ershov Memorial Conference on Perspectives of System Informatics: Akademgorodok, Novosibirsk, Russia
A survey of semantic description frameworks for programming languages
ACM SIGPLAN Notices
Software Abstractions: Logic, Language, and Analysis
Software Abstractions: Logic, Language, and Analysis
USE: A UML-based specification environment for validating UML and OCL
Science of Computer Programming
2nd UML 2 semantics symposium: formal semantics for UML
MoDELS'06 Proceedings of the 2006 international conference on Models in software engineering
System Model-Based Definition of Modeling Language Semantics
FMOODS '09/FORTE '09 Proceedings of the Joint 11th IFIP WG 6.1 International Conference FMOODS '09 and 29th IFIP WG 6.1 International Conference FORTE '09 on Formal Techniques for Distributed Systems
Variability within Modeling Language Definitions
MODELS '09 Proceedings of the 12th International Conference on Model Driven Engineering Languages and Systems
ATVA'10 Proceedings of the 8th international conference on Automated technology for verification and analysis
Monarch: model-based development of software architectures
MODELS'10 Proceedings of the 13th international conference on Model driven engineering languages and systems: Part II
FOCS'10 Proceedings of the 16th Monterey conference on Foundations of computer software: modeling, development, and verification of adaptive systems
Analyzing variability: capturing semantic Ripple effects
ECMFA'11 Proceedings of the 7th European conference on Modelling foundations and applications
Extensive validation of OCL models by integrating SAT solving into USE
TOOLS'11 Proceedings of the 49th international conference on Objects, models, components, patterns
Platform-Variant Applications from Platform-Independent Models via Templates
Electronic Notes in Theoretical Computer Science (ENTCS)
Specifying a testing oracle for train stations
Proceedings of the 8th International Workshop on Model-Driven Engineering, Verification and Validation
A modular model composition technique
FASE'10 Proceedings of the 13th international conference on Fundamental Approaches to Software Engineering
Synthesizing software models: generating train station models automatically
SDL'11 Proceedings of the 15th international conference on Integrating System and Software Modeling
Specifying a testing oracle for train stations --- going beyond with product line technology
MODELS'11 Proceedings of the 2011th international conference on Models in Software Engineering
Defining and verifying behaviour of domain specific language with fUML
Proceedings of the Fourth Workshop on Behaviour Modelling - Foundations and Applications
Strengthening SAT-based validation of UML/OCL models by representing collections as relations
ECMFA'12 Proceedings of the 8th European conference on Modelling Foundations and Applications
Pol: specification-driven synthesis of architectural code frameworks for platform-based applications
Proceedings of the 11th International Conference on Generative Programming and Component Engineering
Hi-index | 0.01 |
To define the formal semantics of a modeling language, one normally starts from the abstract syntax and then defines the static semantics and dynamic semantics. Having a formal semantics is important for reasoning about the language but also for building tools for the language. In this paper we propose a novel approach for this task based on the Alloy language. With the help of a concrete example language, we contrast this approach with traditional methods based on formal languages, type checking, meta-modeling and operational semantics. Although both Alloy and traditional techniques yield a formal semantics of the language, the Alloy-based approach has two key advantages: a uniform notation, and immediate automatic analyzability using the Alloy analyzer. Together with the simplicity of Alloy, our approach offers the prospect of making formal definitions easier, hopefully paving the way for a wider adoption of formal techniques in the definition of modeling languages.