Semantics of context-free languages

@article{Knuth2005SemanticsOC,
  title={Semantics of context-free languages},
  author={Donald Ervin Knuth},
  journal={Mathematical systems theory},
  year={2005},
  volume={2},
  pages={127-145}
}
  • D. Knuth
  • Published 1 June 1968
  • Computer Science
  • Mathematical systems theory
Abstract“Meaning” may be assigned to a string in a context-free language by defining “attributes” of the symbols in a derivation tree for that string. The attributes can be defined by functions associated with each production in the grammar. This paper examines the implications of this process when some of the attributes are “synthesized”, i.e., defined solely in terms of attributes of thedescendants of the corresponding nonterminal symbol, while other attributes are “inherited”, i.e., defined… 
Semantics of Grammars and Attributes via Initiality
TLDR
The main (novel) contribution of the paper comes at the end, where a combination of exponents and naturality is used to capture inherited attributes, the way of side-stepping syntactic criteria.
Semantic equivalence of covering attribute grammars
  • G. Bochmann
  • Computer Science, Linguistics
    International Journal of Computer & Information Sciences
  • 2004
TLDR
This paper investigates some methods for proving the equivalence of different language specifications that are given in terms of attribute grammars, and discusses several propositions that give sufficient conditions for one attribute grammar to be semantically covered by the other one.
An order-algebraic definition of knuthian semantics
TLDR
This paper presents a formulation of Knuthian semantic systems (K-systems) which contain both synthesized and inherited attributes, and generalizes Knuth's original formulation by defining the meaning of recursive (circular) semantic specifications.
Remote attribute grammars
TLDR
It is shown that determining circularity of remote attribute grammars is undecidable and a family of conservative tests of noncircularity are described and shown how they can be used to “schedule” a remote attribute grammar using standard techniques.
Monolithic and modular termination analyses for higher-order attribute grammars
An Approach of Model Transformation Based on Attribute Grammars
TLDR
This paper proposes a system for transformation of information system models based on attribute grammars, which brings the rigor of formal semantics while providing good performance at the implementation by a specific software called an evaluator.
Modular Specifications of XML Processing Tasks with Attribute Grammars Defined on Multiple Syntactic Views
TLDR
A processing engine based on GLR parsing and on a demand-driven attribute evaluation method for XML processing tasks is proposed, which conforms to a syntactic view specially tailored for the processing aspect addressed.
Stepwise evaluation of attribute grammars
TLDR
In a SAG, nondeterministic choices can be expressed in a natural way in conjunction with unambiguous resolution strategies based on attribute values, and this paper presents Stepwise Attribute Grammars (SAGs).
Adaptable Grammars for Non-Context-Free Languages
TLDR
This work defines a grammar formalism with these characteristics and shows how it can be implemented in logic programming in a surprisingly straightforward way, compared with the expressive power of traditional approaches.
Inference of a class of CFPG by means of semantic rules
  • J. Tai, K. Fu
  • Computer Science
    International Journal of Computer & Information Sciences
  • 2004
TLDR
Inference of Stochastic Context-Free Programmed Grammar (STCFPG) by the maximum-likelihood estimate approach is discussed and a method for the inference of Context-free Programmed grammar is presented.
...
...

References

SHOWING 1-10 OF 27 REFERENCES
Correspondence between ALGOL 60 and Church's Lambda-notation
TLDR
A model for computer languages and computer behavior is described, based on the notions of functional application and functional abstraction, but also having analogues for imperative language features.
A syntax directed compiler for ALGOL 60
  • E. Irons
  • Linguistics, Computer Science
    CACM
  • 1983
TLDR
A compiling system which essentially separates the functions of defining the language and translating it into another and it is demonstrated heuristically that the proposed meta-language does suffice to specify a translation for any language it can describe.
Random-Access Stored-Program Machines, an Approach to Programming Languages
TLDR
It is pointed out in several theorems that programs of finitely determined instructions are properly more powerful if address modification is permitted than when it is forbidden, thereby shedding some light on the role of address modification in digital computers.
The Mechanical Evaluation of Expressions
TLDR
It is shown how some forms of expression in current programming languages can be modelled in Church's X-notation, and a way of "interpreting" such expressions is described, which suggests a method of analyzing the things computer users write.
Programming languages for non-numeric processing—1: TMG—a syntax directed compiler
TLDR
To explain how one writes a translator in TMGL, it is described in some detail a compiler which translates a simple algebraic language (SAL) into symbolic machine code for the IBM 7040.
EULER: a generalization of ALGOL, and its formal definition: Part II
TLDR
In this section the algorithmic language EULER is described first informally and then formally by its syntax and semantics, creating a language which is simpler and yet more flexible than ALGOL 60.
EULER: a generalization of ALGOL and it formal definition: Part 1
TLDR
In this section the algorithmic language EULER is described first informally and then formally by its syntax and semantics, creating a language which is simpler and yet more flexible than ALGOL 60.
Correctness of a compiler for arithmetic expressions
Abstract : The paper contains a proof of the correctness of a simple compiling algorithm for compiling arithmetic expressions into machine language.
The Art in Computer Programming
TLDR
Here the authors haven’t even started the project yet, and already they’re forced to answer many questions: what will this thing be named, what directory will it be in, what type of module is it, how should it be compiled, and so on.
The Art of Computer Programming
TLDR
The arrangement of this invention provides a strong vibration free hold-down mechanism while avoiding a large pressure drop to the flow of coolant fluid.
...
...