## Static Semantics with Montages (1998)

Citations: | 1 - 0 self |

### BibTeX

@MISC{Glesner98staticsemantics,

author = {Sabine Glesner and Andreas Heberle and Welf Löwe},

title = {Static Semantics with Montages},

year = {1998}

}

### OpenURL

### Abstract

We introduce a descriptive approach to define static semantics in the framework of Montages. It preserves readability and convenience of specification and guarantees efficient computation of the typing.

### Citations

1084 |
Database and Knowledge-Base Systems, Volume I
- Ullman
- 1988
(Show Context)
Citation Context ....3 The Static Semantics and its Correctness This subsection combines standard results known from data base theory and from the theory of compilers. For detailed descriptions we refer to the textbooks =-=[Ull88]-=- and [WG84]. The solution of the formula (defining the typing and static semantic correctness of a certain program) is defined to be the set S of relations forming the minimal fixed point of the formu... |

751 |
Data Structures and Algorithms
- Aho, Hopcroft, et al.
- 1983
(Show Context)
Citation Context ...ypes. Assume each type t i is represented by a string of length jt i j. Let T (P ) denotes the set of all types of a program P . Lexicographic sorting of all types t i 2 T (P ) is O( P t i 2T jt i j) =-=[AHU87]-=-. Obviously P t i 2T (P ) jt i j = O(n), where n is the program length. If this is done, we refer to types only by their number in the order. Functions f are represented as ordered lists of tuples. Th... |

547 |
The implementation of functional programming languages
- Jones
- 1987
(Show Context)
Citation Context ... This is exactly the time bound which our more general approach guarantees in this special case. In functional languages, type inference and checking is performed by solving systems of type equations =-=[Jon87]-=-. However, type inference as a whole is exponential complete. For the usual core ML-language enriched with user-defined polymorphism, [Kae92] infers principal types based on the concept of constrained... |

96 | Compiler Construction
- Goos, Waite
- 1985
(Show Context)
Citation Context ...c Semantics and its Correctness This subsection combines standard results known from data base theory and from the theory of compilers. For detailed descriptions we refer to the textbooks [Ull88] and =-=[WG84]-=-. The solution of the formula (defining the typing and static semantic correctness of a certain program) is defined to be the set S of relations forming the minimal fixed point of the formula. Minimal... |

84 | Type inference for recursively constrained types and its application to OOP
- Eifrig, Smith, et al.
- 1995
(Show Context)
Citation Context ...ecial cases. We present a general solution algorithm wrt. our application domain and give general time bounds. A type inference mechanism with application to object-oriented programming is defined in =-=[EST95]-=-. It is not restricted to the closed-world assumption. Soundness and correctness of the inference algorithm is established while it remains an open question if it permits efficient solutions. In [Mon9... |

78 |
Ordered Attribute Grammars
- Kastens
- 1980
(Show Context)
Citation Context ...l time [Jaz81]. A sufficient condition for being well-defined can be checked in polynomial time. This test defines the set of ordered attribute grammars as being a subset of the well-defined grammars =-=[Kas80]-=-. However, there is no constructive method to design such grammars. Hence, designing an ordered attribute grammar remains a difficult problem. For another class of attribute grammars it is required th... |

55 |
Type inference in the presence of overloading, subtyping and recursive types
- Kaes
- 1992
(Show Context)
Citation Context ...checking is performed by solving systems of type equations [Jon87]. However, type inference as a whole is exponential complete. For the usual core ML-language enriched with user-defined polymorphism, =-=[Kae92]-=- infers principal types based on the concept of constrained types. They do not assume a closed-world of types in a program. Our goal is somewhat simpler since we assume that all types are specified in... |

38 |
Semantic evaluation from left to right
- Bochmann
- 1976
(Show Context)
Citation Context ...m. For another class of attribute grammars it is required that all attributes can be evaluated during a constant number of DFS of the DT. These are the left-ordered attribute grammars (LAG), [LRS74], =-=[Boc76]-=-. Due to their fixed traversal order, the specification of context-sensitive syntax becomes very operational, i.e. dependent on the analysis, and is not as easily possible as a language designer might... |

37 | Set constraints and set-based analysis
- Heintze, Jaffar
- 1994
(Show Context)
Citation Context ...pler since we assume that all types are specified in the program. With this restriction we come up with an efficient solution where they cannot even be complete in the presence of recursive types. In =-=[HJ94]-=-, a set-constraint calculus is given as well as a set-based program analysis. This calculus is particularly well-suited to infer certain information for program variables, for example the set of all p... |

31 | Montages Specifications of Realistic Programming Languages
- Kutter, Pierantonio
- 1997
(Show Context)
Citation Context ...approach to define static semantics in the framework of Montages. It preserves readability and convenience of specification and guarantees efficient computation of the typing. 1 Introduction Montages =-=[PK97b]-=- are a new way of describing all aspects of programming languages. The static semantics is defined operationally by updating functions like type etc. Additionally, conditions over these functions must... |

21 | The Formal Specification of Oberon
- Kutter, Pierantonio
- 1997
(Show Context)
Citation Context ...ns can be split to local conditions, such that these conditions can be evaluated during a single left-to-right depth-first traversal (DFS) of the DT. It works fine for languages like Pascal or Oberon =-=[PK97a]-=-. For other languages, it would require additional effort, e.g. additional computations during the interpretation of a program. This makes the definition of the static semantics complicated, e.g. in t... |

19 |
Attributed Translations
- Lewis, Rosenkrantz, et al.
- 1974
(Show Context)
Citation Context ...lt problem. For another class of attribute grammars it is required that all attributes can be evaluated during a constant number of DFS of the DT. These are the left-ordered attribute grammars (LAG), =-=[LRS74]-=-, [Boc76]. Due to their fixed traversal order, the specification of context-sensitive syntax becomes very operational, i.e. dependent on the analysis, and is not as easily possible as a language desig... |

12 |
Polymorphic Typing by Abstract Interpretation
- Monsuez
- 1992
(Show Context)
Citation Context ...ST95]. It is not restricted to the closed-world assumption. Soundness and correctness of the inference algorithm is established while it remains an open question if it permits efficient solutions. In =-=[Mon92b]-=- and [Mon92a], abstract interpretation is used as a framework for type inference. The principal type is defined as the largest fixpoint in this framework. Termination is guaranteed with widening opera... |

10 |
Polymorphic types and widening operators
- Monsuez
(Show Context)
Citation Context ...not restricted to the closed-world assumption. Soundness and correctness of the inference algorithm is established while it remains an open question if it permits efficient solutions. In [Mon92b] and =-=[Mon92a]-=-, abstract interpretation is used as a framework for type inference. The principal type is defined as the largest fixpoint in this framework. Termination is guaranteed with widening operators such tha... |

10 |
Defining context-dependent syntax without using contexts
- Odersky
- 1993
(Show Context)
Citation Context ...rder formula '. To check the context-sensitive properties of a program, it is necessary to prove that the program is a model of this formula '. Since the program is finite, this question is decidable =-=[Ode93]-=-. The actual algorithms for the semantic analysis are simple but will fail on certain input programs if the underlying attribute grammar is not well-defined. Testing if a grammar is well-defined, howe... |

9 |
A Simpler Construction for Showing the Intrinsically Exponential Complexity of the Circularity Problem for Attribute Grammars
- Jazayeri
- 1981
(Show Context)
Citation Context ... semantic analysis are simple but will fail on certain input programs if the underlying attribute grammar is not well-defined. Testing if a grammar is well-defined, however, requires exponential time =-=[Jaz81]-=-. A sufficient condition for being well-defined can be checked in polynomial time. This test defines the set of ordered attribute grammars as being a subset of the well-defined grammars [Kas80]. Howev... |

5 |
Formale Spezifikation der kontextabhangigen Syntax von Programmiersprachen
- Poetzsch-Heffter
- 1991
(Show Context)
Citation Context ...lculus is defined in [Ode93]. The semantic analysis can be generated but is much too inefficient for the use in practical compilers. Another framework also based on the predicate calculus is given in =-=[PH91]-=-, incorporating basically the same disadvantages. In [PS94], a specification method for context-sensitive syntax in object-oriented languages based on constraints is given. In this framework the speci... |

3 | Generating Semantic Analysis Using Constraint Programming. Interner Bericht 15/97, Universit at
- Glesner, Heberle, et al.
- 1997
(Show Context)
Citation Context ...language that allows e.g. the use of objects before their declaration, higher order functions and the overloading of operators can already be described with these restrictions. An example is given in =-=[GHL97]-=-. The complexity of the solution algorithm reduces to O(n) since the sorting of types is O(n), the precomputation of predicates and functions also, an update needs time complexity O(1) and O(n) update... |