Denotational semantics: a methodology for language development
Denotational semantics: a methodology for language development
Algebraic approaches to program semantics
Algebraic approaches to program semantics
4th Annual Symposium on Theoretical Aspects of Computer Sciences on STACS 87
SMoLCS-driven concurrent calculi
The International Joint Conference on theory and practice of software development on TAPSOFT '87
Algebraic specification
Denotational semantics of a parallel object-oriented language
Information and Computation
CML: A higher concurrent language
PLDI '91 Proceedings of the ACM SIGPLAN 1991 conference on Programming language design and implementation
Handbook of theoretical computer science (vol. B)
Handbook of theoretical computer science (vol. B)
Operational and algebraic semantics of concurrent processes
Handbook of theoretical computer science (vol. B)
Notions of computation and monads
Information and Computation
Programming language syntax and semantics
Programming language syntax and semantics
Semantics with applications: a formal introduction
Semantics with applications: a formal introduction
Action semantics
Inductive definitions, semantics and abstract interpretations
POPL '92 Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Evolving algebras 1993: Lipari guide
Specification and validation methods
Enhanced operational semantics
ACM Computing Surveys (CSUR)
On the need for a popular formal semantics
ACM SIGPLAN Notices
Initial Algebra Semantics and Continuous Algebras
Journal of the ACM (JACM)
Semantics of programming languages: a tool-oriented approach
ACM SIGPLAN Notices
The Vienna Definition Language
ACM Computing Surveys (CSUR)
The denotational semantics of programming languages
Communications of the ACM
Guarded commands, nondeterminacy and formal derivation of programs
Communications of the ACM
An axiomatic basis for computer programming
Communications of the ACM
Communication and Concurrency
The Definition of Standard ML
Compiling Natural Semantics
MFCS '99 Proceedings of the 24th International Symposium on Mathematical Foundations of Computer Science
Extensible Denotational Language Specifications
TACS '94 Proceedings of the International Conference on Theoretical Aspects of Computer Software
CC '98 Proceedings of the 7th International Conference on Compiler Construction
Algebraic Denotational Semantics Using Parameterized Abstract Modules
Proceedings of the International Colloquium on Formalization of Programming Concepts
A category-theoretic approach to the semantics of programming languages
A category-theoretic approach to the semantics of programming languages
A modular monadic action semantics
DSL'97 Proceedings of the Conference on Domain-Specific Languages on Conference on Domain-Specific Languages (DSL), 1997
Formal Semantics of Java Expressions and Statements
Programming and Computing Software
Algebraic Semantics of an Imperative Programming Language
Programming and Computing Software
A survey of semantic description frameworks for programming languages
ACM SIGPLAN Notices
Using Alloy to model-check visual design notations
ENC '05 Proceedings of the Sixth Mexican International Conference on Computer Science
A rewriting approach to the design and evolution of object-oriented languages
Companion to the 22nd ACM SIGPLAN conference on Object-oriented programming systems and applications companion
A Lightweight Approach for Defining the Formal Semantics of a Modeling Language
MoDELS '08 Proceedings of the 11th international conference on Model Driven Engineering Languages and Systems
Mobile processes and termination
Semantics and algebraic specification
Hi-index | 0.00 |
Formal descriptions of syntax are quite popular: regular and context-free grammars have become accepted as useful for documenting the syntax of programming languages, as well as for generating efficient parsers; attribute grammars allow parsing to be linked with type-checking and code generation; and regular expressions are extensively used for searching and transforming text. In contrast, formal semantic descriptions are widely regarded as being of interest only to theoreticians. This paper surveys the main frameworks available for describing the dynamic semantics of programming languages. It assesses the potential and actual uses of semantic descriptions, and considers practical aspects, such as comprehensibility, modularity, and extensibility, which are especially significant when describing full-scale languages. It concludes by suggesting that the provision of mature tools for transforming practical semantic descriptions into reasonably efficient compilers and interpreters would significantly increase the popularity of formal semantics.The paper is intended to be accessible to all computer scientists. Familiarity with the details of particular semantic frameworks is not required, although some understanding of the general concepts of formal semantics is assumed.