Results 1 -
3 of
3
A realistic compiler generator based on high-level semantics
- In Fourteenth Symposium on Principles of Programming Languages
, 1987
"... peteOCAELN.engin.UMich.EDU We have developed a new style of semantic definition called high-level semantics. In constrast to traditional de-notational semantics, high-level semantics is suitable for both defining the functional meaning of programming lan-guages, as well as describing realistic compi ..."
Abstract
-
Cited by 9 (0 self)
- Add to MetaCart
peteOCAELN.engin.UMich.EDU We have developed a new style of semantic definition called high-level semantics. In constrast to traditional de-notational semantics, high-level semantics is suitable for both defining the functional meaning of programming lan-guages, as well as describing realistic compiler implcmen-tations. Moreover, high-level specifications are consid-erably more descriptive and intelligible than traditional specifications. This paper describer the compiler generator MESS, which embodies the principles of high-level semantics. MESS has been used to generate compilers for nontrivial languages. The compilers are efficient, and produce ob-ject programs that are competitive with those generated by hand-written compilers. 1
Pattern Recognition of Noisy Sequences of Behavioural Events Using Functional Combinators
, 1994
"... Vision systems are now delivering real-time tracked and classified data from which behaviours can be inferred. Behavioural specifications of observable entities are viewed as attribute grammars with general constraints on the values of the attributes. The characteristic features of realistic input d ..."
Abstract
-
Cited by 4 (1 self)
- Add to MetaCart
Vision systems are now delivering real-time tracked and classified data from which behaviours can be inferred. Behavioural specifications of observable entities are viewed as attribute grammars with general constraints on the values of the attributes. The characteristic features of realistic input data to a behavioural recogniser are missing, inserted and noisy values. Behaviour recognition is defined in terms of a simple language which is used to express behaviour specifications. The meaning of a specification is given by a mapping to the set of observable value sequences which exhibit the specified behaviour. A computational mechanism for behaviour recognition, which is consistent with the meaning of behaviour specifications, is given using a simple functional programming language which has been enriched with non-deterministic features. The non-determinism is controlled using a simple belief mechanism. 2 Introduction Conceptual processing of observed data [17] involves constructing...
Realizability and Compositional Compiler Correctness for a Polymorphic Language
, 2010
"... We construct operationally-based realizability relations between phrases in a language with both universal and existential types and programs for a variant SECD machine. The relations, defined using parametricity, biorthogonality and step-indexing, give extensional and compositional specifications o ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
We construct operationally-based realizability relations between phrases in a language with both universal and existential types and programs for a variant SECD machine. The relations, defined using parametricity, biorthogonality and step-indexing, give extensional and compositional specifications of when low-level code and values realize typed source-level terms. We prove full functional correctness of a compiler in terms of these relations and show how they also justify both source-level transformations and the linking of compiled code with hand-optimized code fragments that exploit non-parametric and non-functional low-level operations whilst being extensionally well-behaved. The definitions and results have been fully formalized in Coq.

